Separate JSON functions from DMWriteTask.

Add JsonWriter, which handles Json output from DM, in preparation for
adding json output for tests. This change should not affect behavior.

BUG=skia:2454

Review URL: https://codereview.chromium.org/702513003
diff --git a/dm/DM.cpp b/dm/DM.cpp
index d309db1..2a0c636 100644
--- a/dm/DM.cpp
+++ b/dm/DM.cpp
@@ -18,13 +18,13 @@
 #include "DMCpuGMTask.h"
 #include "DMGpuGMTask.h"
 #include "DMGpuSupport.h"
+#include "DMJsonWriter.h"
 #include "DMPDFTask.h"
 #include "DMReporter.h"
 #include "DMSKPTask.h"
 #include "DMTask.h"
 #include "DMTaskRunner.h"
 #include "DMTestTask.h"
-#include "DMWriteTask.h"
 
 #ifdef SK_BUILD_POPPLER
 #  include "SkPDFRasterizer.h"
@@ -229,7 +229,7 @@
     kick_off_skps(skps, &reporter, &tasks);
     tasks.wait();
 
-    DM::WriteTask::DumpJson();
+    DM::JsonWriter::DumpJson();
 
     SkDebugf("\n");
 #ifdef SK_DEBUG