Make GListModelInterface::get_item usable from GObject Introspection bindings
Make GListModelInterface::get_item usable from GObject Introspection bindings

Language bindings have so far been unable to implement the GListModel
interface because the ::get_item virtual function returns a
non-bindable type (gpointer). The `gpointer` type gets translated into
`void` by G-I meaning that get_item() implementations can't return any
items.

We can set the return type of the get_item() vfunc explicitly to
GObject, which fixes the issue.

This patch also removes the existing (type GObject) annotation on
g_list_model_get_item(), which is necessary because if its return type
matches that of the get_item() vfunc, G-I connects the two and
propagates the 'skip' annotation from one to the other resulting in the
get_item() vfunc being hidden. There's no API break here because the
'skip' annotation makes g_list_model_get_item() invisible to G-I users
anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=787271

johne53/MB3Glib,endlessm/glib,johne53/MB3Glib,endlessm/glib,johne53/MB3Glib,endlessm/glib,endlessm/glib,johne53/MB3Glib,endlessm/glib,johne53/MB3Glib,johne53/MB3Glib