Reland "Plumb resources serviced from memory cache to PLM"

This is a reland of 44af1fd2b2c715df44b0d6a855c807e1ad2e7334

Original change's description:
> Plumb resources serviced from memory cache to PLM
>
> Byte metrics in page load metrics should be indicative of all bytes loaded
> by the page. UMA shows that large numbers of resources (~45% of JS
> resources) come from the memory cache. To provide a better picture of
> everything loaded by the page, we should make memory cache resources
> visible to observers.
>
> This change plumbs information about resources loaded via the blink
> memory cache into PageLoadMetrics. This is done though the existing
> SendTiming mojo, and these resources are included in the existing
> OnResourceDataUseObserved callback for PageLoadMetrics observers. This
> was added to the existing interface so that an observer that wants to
> look at all bytes loaded on the page does not need to implement two
> separate interfaces.
>
> Because we modify the existing mojo, all existing observers need to be
> updated to either discard resources loaded by the memory cache, or need
> to have their relevant histograms versioned.
>
> Observers whose metrics are updated:
>  - CorePageLoadMetricsObserver
>  - TabRestorePageLoadMetricsObserver
>  - MediaPageLoadMetricsObserver
>  - UkmPageLoadMetricsObserver
>
> Observers whose metrics would be affected but are modified to ignore
> MemoryCache resources:
>  - ResourceMetricsObserver
>  - AdsPageLoadMetricsObserver
>  - DataReductionProxyMetricsObserver
>
> Only the histograms versioned in this CL should change. For all histograms
> not versioned in this change, this should be a no-op.
>
> Bug: 968141
> Change-Id: I67ed0977f8532616815ba0fbe6e1eb3f3b70e36f
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1633190
> Commit-Queue: John Delaney <[email protected]>
> Reviewed-by: Bryan McQuade <[email protected]>
> Reviewed-by: Charlie Harrison <[email protected]>
> Reviewed-by: Kinuko Yasuda <[email protected]>
> Cr-Commit-Position: refs/heads/master@{#672925}

[email protected],[email protected]

Bug: 968141
Change-Id: Iec32b076fb38cce0f521f2912dabe7da87104469
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1681450
Commit-Queue: John Delaney <[email protected]>
Reviewed-by: Bryan McQuade <[email protected]>
Cr-Commit-Position: refs/heads/master@{#675255}
44 files changed