This new approach can avoid allocations.
Altered chunkreader to never reuse memory. Altered pgproto3 to to copy memory when decoding. Renamed UnmarshalBinary to Decode because of changed semantics.
pgproto3 will wrap the message encoding and decoding for the PostgreSQL frontend/backend protocol version 3.