HTTP Semantics for Transactions and more
Currently the Repositories are all flushed on every request no matter the type. It should default to only PUT, POST DELETE updating the repositories.
GET Requests should schedule Transactions manually in the controller.
Additionally transactions should be encapsulated in one action and not executed over many different actions. This is problematic because there is no way to stop a transaction. Transactions should be rolled back (no flushing) when an exception is thrown in the controller.