Added a transaction class which requires the execute method.

- Transactions are assumed to only require at least a GridEnvironment to execute correctly at a given time.