Adding a acceptance test to expose the issue with not preserving the body when sending a message to the error q. Its actually only a problem with deserialization exceptions.
Making the transportmessage keep track of its original body and we restore the original before sending messages to the error and/or audit queues