Add a new raw_pwrite_ostream variant, buffer_unique_ostream, which
is like buffer_ostream but with unique ownership of the stream it's
wrapping. Use this in CompilerInstance to simplify the ownership of
non-seeking output streams, avoiding logic sprawled around to deal with
them specially.
This also simplifies future work to encapsulate output files in a
different class.