Authenticate in model instead of controller

TODO: test
Use bootstrap3
Remove garbage
Add flash view
Setup test-unit with DatabaseRewinder
test: Add User#authentication tests