feat(client): An Fx Sync relier can specify `customizeSync=true` to force the Customize Sync checkbox to be checked.

fixes #1954
Add the `importBooleanSearchParam` function to the search-param mixin.
fix(client): OAuth/redirect users who paste the verification link into the original tab should be redirected to the RP.

Save a bit to sessionStorage whenever the user signs up or initiates a password reset. When the verification tab opens, it looks for this bit. If the bit is set, that means the user overwrote the signup/reset password tab with the verification tab and the user should redirect to the RP when the OAuth flow completes. If the bit is not set, this is either another tab or another browser, and the user should *not* go back to the RP.

fixes #1816
The fx-desktop relier swallows the TypeError thrown by importBooleanSearchParam until we have startup error handling nailed down.
Merge pull request #1962 from mozilla/issue-1954-control-sync-checkbox

feat(client): An Fx Sync relier can specify `customizeSync=true` to force the Customize Sync checkbox to be checked.
Merge pull request #1947 from mozilla/issue-1816-redirect-verify-same-tab

fix(client): OAuth/redirect users who paste the verification link into the original tab should be redirected to the RP. r=vladikoff
feat: Check for required OAuth parameters on startup.

If either `scope` or `client_id` is missing/invalid, send the user to `/400.html` and show them an error message.

* Add the 400.html page.
* Check for required parameters in the OAuth relier.
* If the `client_id` is invalid, show the user `Unknown client`
* Augment necessary errors with a `redirect` field. In app-start.js, if the error has the `redirect` field, redirect there instead of the 500 page.

Add two new OAuth errors:
* 1005 - Missing `client_id`
* 1006 - Missing `scope`

fixes #1740
Start logging the full errors for 400 and 500 errors.