* decent docs
* length prefixed: reading using dynamically allocated storage and limits
* length prefixed: writing using iterator
* bytes0: sugar to allocate strings?
* bytes0: change interface to read into buffer?
* bytes0: document, how things are handled when not encounering a 0-byte
