Reland "Use SharedImageInterface for gpu and OOP raster"

This wires up SharedImageInterface all the way to cc, and uses it for OOP and GPU raster.
This also adds memory accounting in SharedImageFactory/SharedImageStub.

TBR=boliu@chromium.org,sadrul@chromium.org

Bug: 870116
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I7cb3837f2082c5a4d03a9bc71e91dc265cbd0e82
Reviewed-on: https://chromium-review.googlesource.com/1242080
Commit-Queue: Antoine Labour <piman@chromium.org>
Reviewed-by: Jonathan Backer <backer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#594755}
34 files changed