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 
- what do the words "offset" and "occupied" mean in this comment?
- add a comma after "added"
- "builders" -> "builder's"
- clarify the antecedent of "it" in "its" and "it" -- are they both the symbol (suddenly single)?