Reland "Move RequestDecode and RequestPresentationCallback from WebLayerTreeView (8/n)"

This is a reland of 07221eb8f25da04080febdc4f18e306eb6d612a5

Original change's description:
> Move RequestDecode and RequestPresentationCallback from WebLayerTreeView (8/n)
> 
> The RequestDecode() method moves to WebWidgetClient, and is implemented
> in RenderWidget.
> 
> The RequestPresentationCallback() is removed, and a method is added as
> WebWidgetTestProxy::RequestCompositeAndPresentation() for test_runner to use
> instead. It acts like RequestPresentation() but forces the scheduled sync
> composite to run the full compositor stack instead of just the main frame
> animation step.
> 
> This removes the LayerTreeView::SynchronouslyComposite() method and
> changes callers to it to call WebWidgetTestProxy::ScheduleAnimation()
> instead of duplicating that logic out in production code.
> 
> This moves ~60 lines of production code into content/shell/test_runner/
> to remove them from chrome.exe, as well as straight up removing another
> ~80 lines of production code. Now RenderWidget and LayerTreeView
> have no concept of synchronous composites, as they are entirely
> managed by WebWidgetTestProxy.
> 
> We now have only one caller of LayerTreeHost::Composite() in web tests
> instead of previously having 4.
> 
> [email protected]
> 
> Bug: 912193
> Change-Id: I26cd9cbbe503e9b876a146f2eebccbf8e9121190
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1544820
> Commit-Queue: Philip Rogers <[email protected]>
> Reviewed-by: Philip Rogers <[email protected]>
> Reviewed-by: Avi Drissman <[email protected]>
> Auto-Submit: danakj <[email protected]>
> Cr-Commit-Position: refs/heads/master@{#645998}

Bug: 912193
Change-Id: I33a171a7efa054d716fa9f31432734c500557bb3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1549414
Reviewed-by: Avi Drissman <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Commit-Queue: danakj <[email protected]>
Cr-Commit-Position: refs/heads/master@{#648317}
18 files changed