added login and authentication, and Answers now take a user.id that is found in the AuthenticatedRequest passed to any action for which the user must be authenticated