it's very hard to do, but it can be done. the problem is that the code is not setup to do that and you have to teach it to implement it yourself.
Discussion
So perhaps like how purplestack tries to build in amber by default, there may need to be a more formal outbox framework built.