Axis.Category._requestSpace caches character sizes
indentation
only clear chr2Measure if a character changed size
typo: computTickWH -> computeTickWH
moved caching code into Util.Text.CachingMeasurer
Add LargeNumber Formatter.

Formats large numbers to short strings. Ex:

1000000 --> "1.00M"
1234567890 --> "1.23G"

Close #577.
comments, CANONICAL_CHR used instead of "x"
Util.Cache created and now used instead of MeasureCache
arrayEq handles null and undefined
Cache uses d3.map instead of regular object
valueEq defaults to ===
Util.Text.CachingCharacterMeasurer added
cacheTests.ts added
cachingCharacterMeasurerTests.ts added
Cache<Value> -> Cache<T>
CANONICAL_CHR moved to Util.Text
cacheTests.ts checks data changes on clear()
cachingCharacterMeasurerTests.ts reword
use CachingTextMeasurer on writeText
combine duplicated code

measureTextInBox, writeText -> writeText
writeTextToTicks, measureTicks -> measureTicks