Handshake
=========
Peer to peer: (See Handshake.java)
  Version : number 
  recvMsgLimit : int32
  sendMsgLimit : int32
  methods : MethodDescription[] 

MessageTypes
=============

Both peers may issue requests and responses

Request:  
  0
  RequestId : int32
  Request : byte[]
  
Response:
  1
  RequestId : int32
  Response : byte[]

InvokeError  
  2
  RequestId : int32
  Error : byte[]

InvalidMethodError
  3
  RequestId : int32
  
Exception_
  4
  RequestId : int32
  message : String

ResponseTooLargeError
  5
  RequestId : int32

  