Refactored CodeGeneratorContext to CodeBuilderContext.

- Needed to separate the context's of "generation" and "building" to enable the communication of the TagHelperProvider.
need an `internal` test-only constructor for `CodeBuilderContext` that avoids need to create a base `CodeGeneratorContext` just to instantiate the `CodeBuilderContext`