Re-implement process_inbound with support for routing blocks.
Re-implement process_outbound with support for routing blocks.
Re-implement publish_event with support for routing blocks.
Add MessageMetadataHelper methods for routing blocks and opt outs.
Clean-up the implementation a fair bit.
Remove un-used import.
Fix buglet in new set_tag() helper.
Fix numerous small errors in new routing code.
Update tests.
Correct router_connector_mapping docstring.
Tear down in the reverse order to which things were set up.
Even better docstrings.
Add tests for new MessageHelperMetadata utility methods.
Add test for opt-out replies.
Clean-up test metadata helper.
Rename some tests in preparation for adding more tests.
First successful routing block routing test.
Add direction to routing block connector attributes.
Use routing block connector direction to properly support both inbound and outbound routing for routing blocks.
Switch to storing the GoConnector rather than the Vumi connector in the list of hops so that events can have the conversation / routing block ID set correctly.