redirect flow wip
Redirect fixes & cleanup

* set needsPopupFix to true for Chrome for iOS.
* Add two options to the navigator.id.request API:
* allowRedirect - allow the page to redirect if needsPopupFix is true.
* forceRedirect - force the page to redirect in all browsers.
Use sessionStorage instead of localStorage so that multiple windows can be opened at once.
Add Windows Phone to the list of browsers needing the redirect flow
Add Blackberry to the list of devices.
Remove forceRedirect and allowRedirect.
Cleanup of the RP Redirect flow.

* Move sessionStorage related functionality to storage.js under the rpRequest namespace.
* Extract the functionality to start various channels into their own functions.
* Add more tests.