Context accepts keyStore object as alternative to keys array.

This allows a custom implementation of a KeyStore to be passed in.
Context algorithm argument optional; not necessary for verifying.
Context headers argument optional; not necessary for verifying.
KeyStore::onlyKey removed; Context sets signingKeyId instead.

This simplifies the KeyStore interface, and importantly allows it to be
implemented with a non-enumerable backend. That is, keys can be
requested by name, but cannot be listed.