Completely revamped the internal dependency management code for distributed transactions. I extracted out all of the code for tracking dependencies that was inside of LocalTransaction and moved it into a new class called DependencyTracker.
This will make it easier for us be able to embed prefetched query results without a ton of extra data structures. I moved the lock out of ExecutionState and into LocalTransaction. I think that eventually we can get rid of the ExecutionState entirely...

KB went to a Providence Bruins hockey game. I'm hanging out working on my database listening to baseballs. It's a cool/rainy Saturday night... Pimps up, hoes down I suppose... #125
Forgot to add the ability to create/remove txn states in the DependencyTracker #125
Added in the ability to create/remove txns from the DependencyTrackers in the proper places. We only need to do it for distributed txns when they actually try to execute work on remote partitions #125