Create a pre compilation module and apis to allow meta programming
to precompile razor pages.

This is limited to sites where the .cshtml are still deployed. It's
current purpose is to speed up startup. Deploying without the razor
files is a separate feature.
Adding Api Explorer
Don't close the stream when reading AssemblyMetadata
Convert memory streams to the byte[] before passing it to roslyn
[Fixes #926] Protocol & Host name ignored when creating action link
[Fixes #429] FileResult

1) Implemented FilePathResult to efficiently return files from disk.
2) Implemented FileStreamResult to return content from a stream.
3) Implemented FileContentResult to return content from a byte array.
Cleanup & comments
Missing comments on Controller
Added functional tests