add remaining packet types: ACK and PINFO
write sensible tests for *all* the packet types

what's tested:
* packet -> bytestream looks as it should
* bytestream -> packet -> bytestream is id mapping

all packet types are tested, all data types for ValuePackets are tested.

i've found a number of bugs writing these, so i guess it was worth it.
nicify serialization/deserialization of u16/u32/float
fix a warning