align /jwks endpoint with draft spec https://tools.ietf.org/html/draft-ietf-jose-json-web-key-37

Rather than return a JSON array of JWKs, return an object that has a
“keys” attribute that is the JSON array
missing dependencies passport-strategy+superagent
got config for provider strategies loading
stop email+password being added to callback URL

previously these values were being added to the URL so they appeared on
the wire and in logs
guard for no config.providers case

e.g. avoid error when config.development.json doesn’t include any
provider configs
change timestamps (exp/at) to be seconds as per http://openid.net/specs/openid-connect-core-1_0.html

Also added some devDependencies needed to get “npm test” working, and
fixed all 3 broken test cases
got all tests passing after timestamps are seconds

also replaced stale test checking for User.email being mandatory, which
it no longer is
merge nrhope pr
Merge branch 'nrhope-master'
Merge branch 'master' of github.com:christiansmith/anvil-connect