Fast string building with minimum heap allocations.
Default implementation of put for numbers (uses decimal ASCII)
Default implementation of put for dchars
Sink which simply copies data to a pointer and advances it. No reallocation, no bounds check - unsafe.
Sink which simply counts how much data is written to it.
Calls putter to count the length of the output, allocates a buffer of that size, and then calls putter a second time to write to the buffer. Returns the buffer.