Add serialization/deserialization for FakePictureLayer for testing.

Previously we serialize/deserialize FakePictureLayer into PictureLayer.
This introduced an issue in LayerTreeHostTestReadyToActivateNonEmpty and
other unit test cases in layer_tree_host_unittests.cc that downcasting
from PictureLayerImpl to FakePictureLayerImpl will fail.

The data flow was:
FakePictureLayer==>PictureLayer==>PictureLayerImpl==>
FakePictureLayerImpl(downcast failure).

This CL adds procedure to process FakePictureLayer, so it can be
deserialized and down cast correctly.

The data flow becomes:
FakePictureLayer==>FakePictureLayer==>FakePictureLayerImpl

BUG=657871
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2451913002
Cr-Commit-Position: refs/heads/master@{#427886}
8 files changed