SkTHash: hash from fnptr to functor type

Passing &SkGoodHash to SkTHashMap and SkTHashSet doesn't guarantee that it's actually instantiated.  Using a functor does.

BUG=skia:

Review URL: https://codereview.chromium.org/1405053002
diff --git a/tests/HashTest.cpp b/tests/HashTest.cpp
index c90c377..c9b1bc9 100644
--- a/tests/HashTest.cpp
+++ b/tests/HashTest.cpp
@@ -120,14 +120,16 @@
     uint32_t* fCounter;
 };
 
-uint32_t hash_copy_counter(const CopyCounter&) {
-    return 0; // let them collide, what do we care?
-}
+struct HashCopyCounter {
+    uint32_t operator()(const CopyCounter&) const {
+        return 0; // let them collide, what do we care?
+    }
+};
 
 }
 
 DEF_TEST(HashSetCopyCounter, r) {
-    SkTHashSet<CopyCounter, hash_copy_counter> set;
+    SkTHashSet<CopyCounter, HashCopyCounter> set;
 
     uint32_t globalCounter = 0;
     CopyCounter copyCounter1(1, &globalCounter);