* Add acceptance tests for the various combinations of Handler, MessageModule and UOW exceptions
  * Verify root exception type
  * Verify exceptions types when it is an `AggregateException` when multiple occur
  * Verify stack traces are not corrupted
* Add acceptance tests for `SerializationExcepition`
  * Verify stack trace is not corrupted
* Extract out common code from `ManageMessageFailuresWithoutSlr.SetExceptionHeaders` and `FaultManager.SetExceptionHeaders` to a helper method
* Remove StackTracePreserver
* Remove `Try Ctach` from `BehaviorChain.Invoke`. no longer needed with `AggregateException` approach
* Obsolete and remove usages of `TransportMessageHandlingFailedException`. this will remove the need for double handling of both `AggregateException` and `TransportMessageHandlingFailedException`
* Make sure to log an error if errors a thrown in OnFailedMessageProcessing