Create TagHelper specific C# code Generation.

- Added TagHelperChunk generation.
- Added CSharp visitors to understand TagHelperChunk's and render corresponding C# code.
- Refactored some code in the CSharpCodeVisitor so it could be utilized in other classes.

#72 

I split up the test portion of this PR to reduce noise.  PR: https://github.com/aspnet/Razor/pull/135
 nit: reads like "something that has C# code" applies to things that _are_ plain text values.  Also comma is misplaced.  Suggest `// HTML attributes are always strings.  So if this value is not plain text i.e. if the value contains C# code, then we need to buffer it.`