Added a ThriftMessage object to hold the thrift payload.
Moved some classes around.
Updated references.
Updated unit tests.
Updated unit tests.
Refactored the thrift codec. Way better now.