Investigate a shared string pool for text nodes
Hypothesis: in an SVG like this:
<svg>
<foo/>
<bar/>
<baz/>
</svg>
All the whitespace goes into NodeData::Text
nodes, and there is a lot of repetition. After !302 (merged), it may be worthwhile to use shared strings for text nodes, as a lot of that whitespace is identical.
I don't know how that will actually play out with real-world SVGs, but if machine-generated SVGs are the norm, maybe they have consistent indentation with a lot of repetition anyway?