user.name must be unique
add error message for taken username
add authenticate: return false if user is not found
authenticate: fails for wrong password
authenticate: returns user if authentication is successful
refactor: simplify conditions
login: add login index route
login: render login index page
login: add form to login