Using transaction contracts instead of concrete classes (to prepare alternative and optional transactions in the future)
Several important changes to the Transaction System

Externalized the Commit process out of TableDataConglomerate, to make it
an independent process (more readable, better performances)
Transaction Context to abstract transaction parent state (for future use
to rederfine various managers dependant on parallel transactions)