Pull out auth-related code into a module
Force an SMS OTP to get sent if needed
Merge #1 from floatplane: "Auth improvements"