Sets up basic functionality including user sign up, log in and out, and sessions