Packet cleanup

Packet design has been cleaned up. 

* The DataAdapter super class has been dropped 
* The methods wroteTo/readFrom have been simplified.
* The Packet doesn't need to create a bytebuffer anymore. Instead of temporarily storing in a bytebuffer, it is now directly written in the byte-array on the correct position. This is a performance optimisation because there is less copying + less object litter.