lots of front end work including the profile page, storing the currentUser, etc