huge refactoring around transactions and queries. Using a new automatic data dependency resolution model within transactions so all queries use a single transaction and cannot be interrupted by other queries.