Add line mappings to project TagHelper attribute values.

- We now create LineMappings for instances where a TagHelper's attribute value is not of a string type.
- This will enable the Razor editor to create projections from .cshtml => .cs for TagHelper attributes.
- Modified the TagHelperCodeGenerator and TagHelperBlockBuiler to accurately track the attribute values start locations so it could flow into code generation.
- Modified existing tests to account for the new line mappings.

#207

/cc @dougbu 
isn't design-time what the `CSharpLineMappingWriter(CSharpCodeWriter, SourceLocation, string)` constructor overload is for?  otherwise it doesn't look like the debugger will have correct line number pragmas