Preserve cookies in WebAuthenticators and better Redirect URL detection

Added ability to preserve cookies when using a WebAuthenticator by specifying an ExistingAccount object. This is to make re-authentication scenarios on single-account apps better for the user.

Also, added logic to detect redirects early than before so that web success screens should be hidden. This fixes the bug of seeing those ugly white Facebook success screens.

Sorry, this should have been two commits, but the work got entwined with each other.