almost finished with user sign up including tests