Sketch DM refactor.

BUG=skia:3255

I think this supports everything DM used to, but has completely refactored how
it works to fit the design in the bug.

Configs like "tiles-gpu" are automatically wired up.

I wouldn't suggest looking at this as a diff.  There's just a bunch of deleted
files, a few new files, and one new file that shares a name with a deleted file
(DM.cpp).

NOTREECHECKS=true

Committed: https://skia.googlesource.com/skia/+/709d2c3e5062c5b57f91273bfc11a751f5b2bb88

Review URL: https://codereview.chromium.org/788243008
diff --git a/dm/DMJsonWriter.h b/dm/DMJsonWriter.h
index 66ce530..58d85d3 100644
--- a/dm/DMJsonWriter.h
+++ b/dm/DMJsonWriter.h
@@ -23,11 +23,11 @@
      *  Info describing a single run.
      */
     struct BitmapResult {
-        SkString name;            // E.g. "ninepatch-stretch", "desk-gws_skp"
-        SkString config;          //      "gpu", "8888"
-        SkString mode;            //      "direct", "default-tilegrid", "pipe"
-        SkString sourceType;      //      "GM", "SKP"
+        SkString name;            // E.g. "ninepatch-stretch", "desk_gws.skp"
+        SkString config;          //      "gpu", "8888", "serialize", "pipe"
+        SkString sourceType;      //      "gm", "skp", "image"
         SkString md5;             // In ASCII, so 32 bytes long.
+        SkString ext;             // Extension of file we wrote: "png", "pdf", ...
     };
 
     /**