Native Fast user Switching - First Pass (DO NOT MERGE)

# Changes at a high level:

* Added ```UserAccountManager``` and ```UserAccount```. These classes contain the new APIs for fast user switching.
* Rework of the flow to add more than one new custom URL endpoint.
* Persistence changes.
* Some upgrade steps.
* ```PasscodeManager``` changes.

# Outstanding items:

* Upgrade paths from older versions.
* Unification of passcode across orgs, and re-encryption of data when the PIN policy changes.
* Storage path tweaks.
* Fixing existing tests.
* Adding new tests for multiple users.