feat(client): Smooth out the verification flow.

* The original tab always automatically completes the oauth flow if it is open when the email is verified.
* If a second tab is opened in the same browser, show the user a link to continue back to the RP.
* If the user verifies in a second browser, show the service name, but do not allow the user to click back to the RP.

fixes #1723
Before emitting, we should see if another tab is listening. If not, do not send since we are sending sensitive information. Once the event is received, the receiver should delete the message from localStorage. If no receiver is available, do not send the message. Dunno. crosstab may provide a simple way to do this.