Outbox implementation

Work left to do:
- [x] A way for the user to register their own mappings with the same `Configuration`
- [x] A way for the saga mappings to be configured in the same `Configuration`