Introduce Display Compositor mojo interface. Use InProcessContextProvider.

This CL makes a number of changes. I think it's easier to put it all together in a single
CL and easier to review. Here are the notable changes:

1. A new DisplayCompositor mojo interface has been introduced to create
CompositorFrameSinks and to update surface references.

2. Mus-WS code no longer knows about GpuCompositorFrameSink, instead
requesting a CompositorFrameSink from Mus-GPU (still in the same process for now).

3. Mus-WS no longer creates an internal GPU channel as display compositor code is
no longer accessed directly by Mus-WS.

4. Root windows with valid AcceleratedWidgets now create
InProcessContextProviders instead of SurfacesContextProviders (which use a
GpuChannelHost).

5. DirectOutputSurface, and DirectOutputSurfaceOzone no longer use SurfacesContextProvider.

6. SurfacesContextProvider has been deleted.

7. MusGpuCompositorFrameSink moves out of window server code as it's only used
internally by the display compositor.

BUG=610937, 661278

Review-Url: https://codereview.chromium.org/2481263002
Cr-Commit-Position: refs/heads/master@{#433990}
45 files changed