[Backport] cc: Add RendererCapabilitiesImpl

Separate RendererCapabilities and RendererCapabilitiesImpl classes to
separate out capabilities that are not needed on main thread to be
not copied to main thread. This is to prepare for the future when main
and impl RendererCapabilities copies can temporarily get out of sync,
and there are less values to worry about.

BUG=332616

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244870 0039d316-1c4b-4281-b951-d872f2087c98

Conflicts:
	cc/trees/layer_tree_impl.h

Change-Id: I0580b6268d414e9ec46c7a154a4a3f659015dce7
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
[Backport] cc: Prevent usage of rasterize on-demand with delegating renderer.

PictureDrawQuads are not yet supported by the delegating renderer.
Generating this type of quads for on-demand raster of tiles cause
invalid IPC to be sent to the parent compositor and the renderer
to be killed.

This makes us activate with low-res or checkerboard tiles until
PictureDrawQuads are properly supported by the delegating renderer.

BUG=340695
TEST=cc_unittests --gtest_filter=*RasterizeOnDemand*

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250273 0039d316-1c4b-4281-b951-d872f2087c98

Conflicts:
	cc/resources/tile_manager.cc

Change-Id: I9a08cc770d97d297c71dec88f3fdb878208d21ac
Reviewed-by: Andras Becsi <andras.becsi@digia.com>