Propogate additional compilation data from RoslynCompilationService

* Update CompilationFailedException to include path of file being compiled
* Pass in path being compiled to Rolsyn.
* Adding doc comments for compilation pieces

Fixes #869
why are we making anything `internal`?  I see the TODO but don't get why we'd execute on it prior to an all-up API review.