Implement user account
Implements login functionality and saves the user to the session to allow for additional functionallity. Note this is due to time concerns not tested extensively and needs additional testing once other functionality is implemented.