refactor, moving sign up logic to sign_up_service object