Dynamically create stencil buffer when needed.

Review URL: https://codereview.chromium.org/938383004
diff --git a/src/gpu/GrSurfacePriv.h b/src/gpu/GrSurfacePriv.h
index 3c1e9c1..cd1f6b9 100644
--- a/src/gpu/GrSurfacePriv.h
+++ b/src/gpu/GrSurfacePriv.h
@@ -34,9 +34,9 @@
     bool hasPendingIO() const { return fSurface->hasPendingIO(); }
 
 private:
-    GrSurfacePriv(GrSurface* surface) : fSurface(surface) { }
-    GrSurfacePriv(const GrSurfacePriv& that) : fSurface(that.fSurface) { }
-    GrSurfacePriv& operator=(const GrSurface&); // unimpl
+    explicit GrSurfacePriv(GrSurface* surface) : fSurface(surface) {}
+    GrSurfacePriv(const GrSurfacePriv&); // unimpl
+    GrSurfacePriv& operator=(const GrSurfacePriv&); // unimpl
 
     // No taking addresses of this type.
     const GrSurfacePriv* operator&() const;