[Background Fetch] Support registrations w/duplicate URLs.

This CL uses a workaraound to enable storing duplicate URLs in the Cache
Storage, until it is fully supported.
The way it works is that it appends the unique_id+request_index to the
URL query, and removes it again when extracted from the cache.

When a request is matched, we search the cache with ignored query mode,
then we recheck that the queries in fact match. This also allows to
store duplicate URLs with different methods.

This CL should be submitted with a second part, that performs a cache
migration from the old format to the new one.

Bug: 871174
Change-Id: Id801361424fbb9464016daba153155c3259b6671
Reviewed-on: https://chromium-review.googlesource.com/c/1414937
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Mugdha Lakhani <nator@google.com>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#625239}
11 files changed