Changed WithTransactionContext to be safer in the event of a ThreadAbort exception.