fix(avatars): load profile image on settings and sign in pages if available

 This refactor changes a number of things:
    * fix avatar background (fixes #1722)
    * loads profile images on settings and sign in account chooser (fixes #1727)
    * introduces User and Account models
    * imports old Session based sessions into User
    * handles direct link to settings page from RPs for a specified account (fixes #1686)
    * redirects unverified accounts that visit /settings (fixes #1716)
    * introduces a way to pass ephemeral data between views
    * removes unused avatar-change-via-URL resources/tests (fixes #1544, fixes #1618)
When running coverage with `?coverage`, a few lines need tests:

```
 // persists account data and sets it as the current account
54 _setCurrentAccount: function (account) {
55   this._setAccount(account);
56   this._storage.set('currentAccountUid', account.uid);
57 },
58
```

and 

```
179 if (self.getCurrentAccount()) {
180   // We've already upgraded the session
181   return;
182 }
```