[paint] Pass hb_paint_context_t along

Replace the font argument with a hb_paint_context_t
that carries the font, the palette index and the
foreground color.

The hb_font_paint_glyph() api now takes the palette
index and the foreground color as extra arguments.

Update all callers and regenerate test results.
diff --git a/src/hb-font.hh b/src/hb-font.hh
index 60fc532..83f0d87 100644
--- a/src/hb-font.hh
+++ b/src/hb-font.hh
@@ -403,11 +403,14 @@
   }
 
   void paint_glyph (hb_codepoint_t glyph,
-                        hb_paint_funcs_t *paint_funcs, void *paint_data)
+                    hb_paint_funcs_t *paint_funcs, void *paint_data,
+                    unsigned int palette,
+                    hb_color_t foreground)
   {
     klass->get.f.paint_glyph (this, user_data,
                               glyph,
                               paint_funcs, paint_data,
+                              palette, foreground,
                               !klass->user_data ? nullptr : klass->user_data->paint_glyph);
   }