Add IDBObjectStore.getKey(query) API (experimental)

When probing for existence this avoids the deserialization
and cursor overhead and identifies a specific key in a range,
which are drawbacks to get(), count(), or openKeyCursor().
Also makes the store and index query APIs the same shape.

Intent to Implement: https://groups.google.com/a/chromium.org/d/topic/blink-dev/LNvvdSbgAqw/discussion
Spec: https://w3c.github.io/IndexedDB/#dom-idbobjectstore-getkey

Review-Url: https://codereview.chromium.org/1407883002
Cr-Commit-Position: refs/heads/master@{#415047}
10 files changed