Created incoming and outgoing message contexts to clean up the MessageTransport. MessageTransport also now supports the ability to raise events when it receives, processed or had an error with an incoming message.