Work toward removing SkPM4f

Added SkColor4f premul/unpremul that just return SkColor4f.
Renamed existing premul to toPM4f. For many uses of SkPM4f,
conversion to pure SkColor4f code was simple. In all other
cases, continue to use SkPM4f for now.

Also convert usage of one-off SkRGBAf class in SkPatchUtils,
and delete that class, along with some truly tautological
unit tests that were the only thing keeping some PM4f API
around.

Bug: skia:
Change-Id: I344c3290ee7af6bbe86c3ff74a2df2f5e87afa38
Reviewed-on: https://skia-review.googlesource.com/156005
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
diff --git a/include/core/SkColor.h b/include/core/SkColor.h
index c0dd6c0..caf30ac 100644
--- a/include/core/SkColor.h
+++ b/include/core/SkColor.h
@@ -307,11 +307,28 @@
         return Pin(fR, fG, fB, fA);
     }
 
+    /** Returns SkColor4f with all components premultiplied by alpha.
+
+        @return  premultiplied color
+    */
+    SkColor4f premul() const {
+        return { fR * fA, fG * fA, fB * fA, fA };
+    }
+
+    SkColor4f unpremul() const {
+        if (fA == 0.0f) {
+            return { 0, 0, 0, 0 };
+        } else {
+            float invAlpha = 1 / fA;
+            return { fR * invAlpha, fG * invAlpha, fB * invAlpha, fA };
+        }
+    }
+
     /** Internal use only.
 
         @return  premultiplied color
     */
-    SkPM4f premul() const;
+    SkPM4f toPM4f() const;
 };
 
 #endif