Some cleanup

I've refactored a couple of the classes, primarily in the OmniSharp.Solution namespace.  The important changes are:
* The OrphanProject now exists, which is used when a file isn't part of any project.  This way BufferParser doesn't have to worry about whether or not a file is part of an actual project.  Right now it is very conservative and only loads the mscorlib assembly.  Maybe that should be changed or somehow configurable?
* Projects and files are loaded using absolute paths instead of their relative paths.  Justification: Previously, when I tried to complete in any file, "first" project was used rather than the one the file was actually in.  As it turned out, vim was sending the file name as the absolute path, which didn't exactly match any files' names which were relative and (on OS X) a mixture of Unix and Windows path separators.