Compositor bindings for mojo html_viewer
This binds mojo's html_viewer to a compositor implementation that uses surfaces
to present. It reuses the bindings for the WebLayer* types in cc/blink and adds
a new implementation of blink::WebLayerTreeView that shares some things with
content/renderer/gpu/render_widget_compositor.cc but is distinct enough to be
its own class. Whenever the compositor resizes (and thus needs a new surface id)
it passes the surface id to the view manager client lib.
This also adds mojo bindings for a few new quad types that are used on the web.
We don't yet have support for video quad types, but we don't have the media
system hooked up to html_viewer yet either so these will not be generated.
Review URL: https://codereview.chromium.org/
558343004
Cr-Commit-Position: refs/heads/master@{#294546}