Move to version 1 protocol. Implement msgpack. Refactoring

* This spec implements the verison 1 protocol
* Wire compatible with the python version
* Removed xdr implementaion
* Wrote msgpack implementation (upsteam msgpack does not yet provide
  support for the published msgpack standard, which the python version
  does, so writing our own seemed reasonable given that we use a small
  subset.
* In line with the new simplified datatypes, The container type
  VerifiableMessage is removed.
* Simplified the Signer API (signer now signs arbitrary byte arrays)
That seems like a bug in my IDE. Fixed in upcoming change.