Get gpudft support working in dm, gm, nanobench and bench_pictures

Adds a new config to test distance field text.
Clean up some flags and #defines to read "distance field text",
not "distance field fonts" to be consistent with Chromium

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/699453005
diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp
index da81c69..96c0714 100644
--- a/src/gpu/SkGpuDevice.cpp
+++ b/src/gpu/SkGpuDevice.cpp
@@ -67,7 +67,7 @@
 
 #define DO_DEFERRED_CLEAR()             \
     do {                                \
-        if (fNeedClear) {               \
+        if (fFlags & kNeedClear_Flag) {  \
             this->clear(SK_ColorTRANSPARENT); \
         }                               \
     } while (false)                     \
@@ -137,7 +137,7 @@
 
     fContext = SkRef(surface->getContext());
 
-    fNeedClear = flags & kNeedClear_Flag;
+    fFlags = flags;
 
     fRenderTarget = SkRef(surface->asRenderTarget());
 
@@ -148,8 +148,8 @@
 
     this->setPixelGeometry(props.pixelGeometry());
 
-    bool useDFFonts = !!(flags & kDFFonts_Flag);
-    fTextContext = fContext->createTextContext(fRenderTarget, this->getLeakyProperties(), useDFFonts);
+    bool useDFT = SkToBool(flags & kDFText_Flag);
+    fTextContext = fContext->createTextContext(fRenderTarget, this->getLeakyProperties(), useDFT);
 }
 
 SkGpuDevice* SkGpuDevice::Create(GrContext* context, const SkImageInfo& origInfo,
@@ -310,7 +310,7 @@
     GR_CREATE_TRACE_MARKER_CONTEXT("SkGpuDevice::clear", fContext);
     SkIRect rect = SkIRect::MakeWH(this->width(), this->height());
     fContext->clear(&rect, SkColor2GrColor(color), true, fRenderTarget);
-    fNeedClear = false;
+    fFlags &= ~kNeedClear_Flag;
 }
 
 void SkGpuDevice::drawPaint(const SkDraw& draw, const SkPaint& paint) {
@@ -1473,7 +1473,7 @@
     // clear of the source device must occur before CHECK_SHOULD_DRAW
     GR_CREATE_TRACE_MARKER_CONTEXT("SkGpuDevice::drawDevice", fContext);
     SkGpuDevice* dev = static_cast<SkGpuDevice*>(device);
-    if (dev->fNeedClear) {
+    if (dev->fFlags & kNeedClear_Flag) {
         // TODO: could check here whether we really need to draw at all
         dev->clear(0x0);
     }
@@ -1763,6 +1763,8 @@
     SkAutoTUnref<GrTexture> texture;
     // Skia's convention is to only clear a device if it is non-opaque.
     unsigned flags = info.isOpaque() ? 0 : kNeedClear_Flag;
+    // If we're using distance field text, enable in the new device
+    flags |= (fFlags & kDFText_Flag) ? kDFText_Flag : 0;
 
 #if CACHE_COMPATIBLE_DEVICE_TEXTURES
     // layers are never draw in repeat modes, so we can request an approx