Added Canvas.

* codegen/extradefs/generate_extra_defs_clutter.cc:
  Add CLUTTER_TYPE_CANVAS.
* clutter/src/clutter_signals.defs: Regenerate
  and change CairoContext to cairo_t.
* clutter/src/canvas.[hg|ccg]:
* clutter/src/filelist.am: Add the Canvas class.
* codegen/m4/convert_clutter.m4: Add a conversion.
* clutter/clutterm.h: Include canvas.h.

This commit is based on the patch here:
https://bugzilla.gnome.org/show_bug.cgi?id=725125#c10