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