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 
where exactly will this point when `capturedAttributeValueStart == false` and when that's `true`?
I suspect it'll point to the start of the attribute name in the `false` case and the `@` in the `true` case.  I hope that's not correct...