gtk3: implement Gtk::Stack

GtkStack is provided in gtk3+ 3.10 or later. see: https://developer.gnome.org/gtk3/3.10/GtkStack.html
gtk3 test: fix a typo

titile ->
tit le
   ^
gtk3: return self instead of Qnil.

Because of Ruby-GNOME2 naming/conversion rules.
gtk3: remove needless `set_` prefix

target function doesn't have `set_`.
gtk3: unify `Gtk::Stack#set_visible_child` and `Gtk::Stack#set_visible_child_full`

These are similar operations, so it is reasonable to unify APIs.
gtk3 test: more meaningful test case

avoid to use assert_nothing_raised.
gtk3: implement generic Gtk::Stack#add
gtk3 test: use generic Gtk::Stack#add
gtk3: remove needless `Gtk::Stack#add_named` and `Gtk::Stack#add_titled`
gtk3: use assert_false instead of assert_equal
gtk3 test: remove needless block arguments
gio2: clean up test runner
gio2: Fix "no implicit conversion" error of Gio::ContentType module methods

SF.net: #186

Reported by neversleep1911. Thanks!!!
gio2-gi: use " (double quote) for string literal
gio2-gi: use " (double quote) for string literal
travis: disable ruby-head
gio2: use just a representing value
gio2: fix path
gio2-gi: fix a path
gi: support freeing interface