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 
- ok, find a better word than "offset"
- "occupied" is _much_ less clear than the earlier `When symbols are accepted into SpanBuilders` even though the rest of that comment does not help me understand these changes.