I wonder if it's a feasible idea to just accept `MessageBuf` and add a `ByteBuf` that contains the remaining data to it.  What do you think?