RoslynCompilationService should set the generated code when compilation succeeds

Fixes #895
raising comment unintentionally written against an individual commit:
* wouldn't normally expect a `private` parameterless constructor except in nested classes.  doesn't this make it impossible to create an instance of a subclass?  is that the intent?