Determine max payload size from input list of sizes by packet type
Bug fix: was assuming buffer.length == payload size
Add support for registering new packet types on the fly and use this to require an initial boot packet before accepting data packets.