add locking to authorize() method
Add support for restarting server during tests and defining pre and post test
actions without implementing an additional test watcher
basic transaction workflow tests