added note about mcproxy
encode and code on packets are class methods
rewrite packet handling code

this substantially rewrites the packet handling code to allow classes in
datatypes.py to be responsible for data length.  Also adds some basic
documentation.