Make Surface creation lazy for OffscreenCanvasFrameReceiverImpl

This CL shifts the SurfaceFactory pointer and SurfaceFactoryClient implementation
 from OffscreenCanvasSurfaceImpl to OffscreenCanvasFrameReceiverImpl to
facilitate resource handling after compositor frame is submitted. As a result,
surface on browser is lazily created (only happened on the first commit()).

BUG=563852

Review-Url: https://codereview.chromium.org/2333133003
Cr-Commit-Position: refs/heads/master@{#418402}
     FakeOffscreenCanvasSurfaceImpl() {}

     FakeOffscreenCanvasSurfaceImpl() {}
