Extra trace info
Reduce GetContainingLine usage in text objects

Profiling of text object usage in HTML pages revealed that allocation of
ITextSnapshotLine instances was contributing negatively to perf (related
to #10680).  To combat this I introduced the SnapshotColumn structure
which associates an ITextSnapshotLine with a column.  This implicitly
caches the line and significantly reduces the allocation profile of the
code.

Still more work to do on the overall scenario though
Refactored text object items
Caching of a couple sentence metrics