Added authentication - login, logout, additional fields to the user model.