Split out Transactor from Database, and make Transactions and DatumStores immutable