make set3DMask virtual, so we can safely notify the shadercontext

also boost preallocated storage to account for this combo of bitmapshader + emboss + colorfilter

BUG=skia:
R=djsollen@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/563563002
diff --git a/src/core/SkFilterShader.h b/src/core/SkFilterShader.h
index 2ff6cda..b98fc83 100644
--- a/src/core/SkFilterShader.h
+++ b/src/core/SkFilterShader.h
@@ -30,6 +30,11 @@
         virtual void shadeSpan(int x, int y, SkPMColor[], int count) SK_OVERRIDE;
         virtual void shadeSpan16(int x, int y, uint16_t[], int count) SK_OVERRIDE;
 
+        virtual void set3DMask(const SkMask* mask) SK_OVERRIDE {
+            // forward to our proxy
+            fShaderContext->set3DMask(mask);
+        }
+
     private:
         SkShader::Context* fShaderContext;