Changed commit pathway for _ActiveEvents.  Instead of going through
commit_manager and using blocking locks during the first phase of
commit, instead use trylocks.  If a trylock fails, sleep for a short
time and check if while we were asleep we were told to back out.  If
we were told to back out, then stop trying to acquire locks.  If we
were not told to back out, then try again to acquire the lock.
Refactored first phase commit code so that base class did not have to know about subclasses.
Starting to move away from commit manager.  Must re-write a lot of test code.
Got rid of commit manager class.  Now handling all commit logic in
_ActiveEvent class.  Did this so that I could back out of the first
phase of a commit after initially trying to enter it.  (Necessary to
avoid deadlock.)  Substantial performance reduction on the benchmark
increment_single_number_separate_events.  Must look into.
Added deadlock check to all tests.