So far the best thing I've found is a cool function called indirect-region. To use it, just mark a region you want to edit separately and execute the function. A new buffer opens containing the marked text. All edits are reflected in the source doc. But the really cool thing is that the new buffer can have a different major mode from the source! So when I'm writing an email and want to work on a long Perl example I can just pop the region into a cperl-mode window! Very cool. To make this even easier I've set the default mode for indirect-region to cperl-mode.
Thanks Mario Lang!