refactor: init user_database with a couchrest db
refactor: separate user event handler
refactor: moved prepare and destroy into user_event_handler
prevent 409s and 412 and reraise them in tests

Including tests that ensure this
Merge pull request #10 from azul/refactor/user-database

Refactor/user database