Retain site<->email associations until a user either explicitly logs out or a new user logs in.

* On user.logoutUser, remove all emails, loggedIn emails, and site<->email associations.
* When a user's session expires, invalidate all certs (remove keys) but do not remove the email address.
* Depend on checkAuthenticationAndSync to remove any old email addresses and site associations for users who log out.

issue #1500
Generalizing createValidatedEmail and testEmailInvalidated.