Added Backend for User Profile API

Work is entirely in Java codebase. Created a UserProfileService and UserProfileController to retrieve and update user profile information. Created tests for both the service and the controller. Created a User model, and updated the UserSession to use it.
If you're not logged in, I think the error should be 401, not 500.