Use a packet class rather than strings.

This eliminates the performance ridiculousness of pushing the whole
packet as a string.  Also makes handling endianness and all that very
easy and quick.