This reads cleaner, and lets us directly access the SIWEResult from the error-handling code (needed in a later diff).
Note that this changes the error handling slightly. Whereas previously, onFailure would only get triggered if the SIWE call to the keyserver rejected, now it can get rejected if any of the earlier calls reject:
- await logInExtraInfo
- await getInitialNotificationsEncryptedMessage
I think it's probably a good thing to show the user an error in these cases.
Depends on D10412