Added support for @helper and @section.
Add code generation tests for tag helpers.

#72
Addressed code review comments
Changed test tag helper temp names.
Rebased.
Addressed code review comments
Added tests to validate tag helpers in sections and helpers.
Add extensibility point for TH attribute code gen.

- Followed the "decorate" pattern that we use throughout Razor.
- Enabled the CSharpCodeBuilder to decorate the CSharpCodeVisitor which exposes a CSharpTagHelperCodeRenderer which is indirectly used to render attribute values.
- Fixed up some existing classes that just new'd up the CSharpCodeVisitor class to instead take in the decorated version.

#119
Add test for TagHelperAttributeCodeGenerator extensibility.

- Tested that we can successfully plugin our own TagHelperAttributeCodeGenerator.
- Moved some existing TagHelper test logic into its own base type to enhance code reusability.

#119
Addressed code review comments
Addressed code review comments.
Add @addtaghelper directive.

- Also added some infrastructure pieces for it such as the ITagHelperDescriptorResolver and the default implementation TagHelperDescriptorResolver which will be filled out in a later commit.
- Reworked some extensibility points to allow accessibility of the descriptor resolvers per offline discussions.

#111
Add tests to validate @addtaghelper directive.

- Fixed existing tests to work with new RazorParser.
- Validated directive syntax tree creation, errors and code generation.

#111
Addressed code review comments.
Rebased