add constaint to ProtocolData abstract type to ensure serializability
move read callbacks entirely into the server level and out of the protocols
change onRead to take TCPConnection parameter instead of T <: TCPCodec
implement back-propagation of network congestion with new flowTo method
drop parameterless write method from TCPCodec api
add onConnection handlers to server api