adds user creation, login and authentication