Refactoring + Style Cop Changes

1. LinkNodes added to Transaction, to make the ToRegen property private
to Transaction
2. Moving reenerate code to the priority queue, so that entries can be
removed from Transaction
3. Moving transaction locking classes to separate files