Convert QuotaClient interface to use url::Origin instead of GURL

Quota operates in terms of origins, but the code is old. Update the
QuotaClient interface implemented by storage back-ends to use the
dedicated Origin type instead of URL.

For storage back-ends that have been internally converted from GURL to
Origin, this eliminates Origin<->URL at the API boundary: Indexed DB,
Cache Storage. For storage back-ends that have not been converted, this
introduces additional conversions which will go away: Service Workers,
File System, WebSQL.

The Quota system still uses GURLs internally, so it conversions are also
introduced there. Additional follow-on work includes using
BindOnce/OnceCallback, and converting the public interfaces that
chrome/browser/browsing_data uses to query usage over to use
url::Origin.

Bug: 598424
Change-Id: I4d2d5c5872e0d02307bb624b4e62b2b3d76b1052
Reviewed-on: https://chromium-review.googlesource.com/920782
Reviewed-by: John Abd-El-Malek <[email protected]>
Reviewed-by: Marijn Kruisselbrink <[email protected]>
Commit-Queue: Joshua Bell <[email protected]>
Cr-Commit-Position: refs/heads/master@{#537117}
31 files changed