Added some specs
Exception when autogenerated key already initialized
Added a always rollback transaction manager for unit testing
Change method name to withRollback
Update test with new test transaction manager