Refactored CodeGeneratorContext to CodeBuilderContext.

- Needed to separate the context's of "generation" and "building" to enable the communication of the TagHelperProvider.
based on the other constructor, the argument should be `shouldGenerateLinePragmas: (context.SourceFile != null)`