ServerRegistration operations need to be used by both register_user
and update_user. ServerLogin operations need to be used register_user,
update_user, and login_user. May as well refactor this shared logic to
provide similar terminology in potential errors, and improve readability.
These map the potential opaque protocol errors to a corresponding gRPC status
error.
Part of https://linear.app/comm/issue/ENG-2763
Related https://linear.app/comm/issue/ENG-2733