Cleaning up Transaction and PriorityQueue

1. Transaction.Run moved to TransactionContext
2. Transaction class made public
3. Adding XML comments to Transaction class
4. Updating PriorityQueue comments