Add cc::SurfaceLayer for referencing external surfaces

This adds a layer type that references an external surface.

We'll probably want to add some more data on a surface layer such as synchronization points sometime in the future.

BUG=334090

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245650 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 245650