Added SkImage::MakeCrossContextFromEncoded

Designed for Flutter's threading architecture, with
an eye to being useful to other clients. Under the
hood, uses a new image generator class to lazily wrap
a texture for multiple GrContexts.

Re-land of https://skia-review.googlesource.com/c/14180/

Bug: skia:
Change-Id: I3dd382640629b79b3058f18fee68d043566e43e5
Reviewed-on: https://skia-review.googlesource.com/15895
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
diff --git a/gn/gm.gni b/gn/gm.gni
index 5cfde5f..4bcd103 100644
--- a/gn/gm.gni
+++ b/gn/gm.gni
@@ -85,6 +85,7 @@
   "$_gm/copyTo4444.cpp",
   "$_gm/crbug_691386.cpp",
   "$_gm/croppedrects.cpp",
+  "$_gm/crosscontextimage.cpp",
   "$_gm/cubicpaths.cpp",
   "$_gm/dashcircle.cpp",
   "$_gm/dashcubics.cpp",