Add Packets

Added basic Packet types. The abstract Packet class implements the
Serializable interface so all Packet implementations can be used with
Object streams.