Improved string-writing performance by another 5% or so, by avoiding temporary allocations on long strings. We now do a few extra writes to the underlying string (strings are encoded in 256-byte chunks instead of all-at-once) but avoid allocating Encoders and byte arrays for every long string write. Further testing may be needed to figure out if this optimization is worth the extra writes.