Refactor user creation and log in

* Extract `Session` model
* Extract `UserBuilder` class