This is mostly to recognize the packets and a start to reverse engineer the currently undocumented protocol. It's very far from complete/correct! svn path=/trunk/; revision=32542