Edits to work with Visual Studio.

The addressed issue is how VS sets the Fo (output file) argument and
how the real compiler reads it.  VS sets the Fo to a directory like
"LibDir\Release\\" and saves the command line to a text file that it
passes to cl.  When clcache reads in the file and decodes it, the
string is '"LibDir\\Release\\"'.  To properly handle the output filename
I have changed how the input text is parsed into options, and how the
output filename is created from the Fo argument.  Also, the real
compiler is not correctly getting/understanding the Fo argument when it
is passed directly, so instead the commandline is now saved to a
tempfile which gets passed.