Implement user sign up, sign in and out