Port message manager to emulate a request-response style communication through ports, a'la Http.send ResponseHandler request.
Porter model, used to keep track of response handlers.
Module messages.
Initialize model.
Update port model based on local messages. Returns a new port model and a local command that must be mapped to the parent message.
Subscribe to messages from ports.
Initiate a message send.
Porter configuration, containing ports and message encoders/decoders.