Run smooth scroll animations on the compositor when possible

This CL implements "immediate retargeting" shown in the following diagram:
https://docs.google.com/drawings/d/1z76m-GMDgLI-clkfroLJ-5yhsHkmriZr_swP0kn5iw4

This CL does the following
- Add a new state to ScrollAnimatorCompositorCoordinator to update the target
offset on the compositor
- Use the ScrollAnimatorCompositorCoordinator to schedule anim
- Add plumbing from the animators to the animation controller to abort
animations

Sample test pages:
yashmalik.com/nested_scroll_mousewheel_listener.html
yashmalik.com/nested_scroll_mousewheel_listener_15ms_janky.html (tight loop in RAF)

BUG=552556
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1534813004

Cr-Commit-Position: refs/heads/master@{#366685}
31 files changed