added TransactionTrait, fixes nested transactions