Prepare CachedMetadataSender to be used without Resource

This patch decouples CachedMetadataSender from Resource and
provides a factory method to create one of the three
implementations.

This is a preparation to not using WebURLLoader
for main resource. See step 6.d in the doc linked
to the bug.

Bug: 855189
Change-Id: Ia04dd1c549fbb53970032e6dcae9cfa6587e7dc8
Reviewed-on: https://chromium-review.googlesource.com/c/1393783
Reviewed-by: Hiroshige Hayashizaki <hiroshige@chromium.org>
Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#620393}
5 files changed