Fix dir method for static GParamSpec in Python 3

Add a __dir__ method which lists GParamSpec attributes and remove code from
getattr which made use of the deprecated __members__ technique for dir
(removed in Python 3). This makes dir(pspec) work again in Python 3.
Revert "Add type checking to positional Gtk.Box and Gtk.Window ctor arguments"

This reverts commit 7193f0509a0ed7da7c810daa6733e34a22db3180.
tests: Use explicit keywords args when calling initializers

Replace all usage of GObject creation that relies on positional
arguments from overrides. Positional initializer args will be
deprecated, updating the tests as a first pass proves backwards
and forwards compatibility of the deprecation.

https://bugzilla.gnome.org/show_bug.cgi?id=705810
Add deprecation warnings and cleanup class initializer overrides

Print deprecation warnings for calls to class initializers which
don't explicitly specify keywords. Print deprecation warning
for overrides that have renamed keywords (Gtk.Table.rows should
be n_rows). Additionally deprecate non-standard defaults with
initializers (Gtk.SizeGroup.mode defaults to HORIZONTAL in GTK+
and VERTICAL in PyGI).
Remove AboutDialog override because it doesn't do anything.

https://bugzilla.gnome.org/show_bug.cgi?id=705810
Cleanup overzealous new and init implementations

Remove PyGObject initializer code attempting to set properties on
GObjects that have already been created. There were a number of
overridden __new__ and __init__ methods that stripped away
arguments before calling the base class to work around attempted
property sets and argument count errors (fixing the symptom not
the problem).
Use Gtk.ListStore/TreeStore.new with __new__ override instead
of __init__ with set_column_types.

https://bugzilla.gnome.org/show_bug.cgi?id=705810
Deprecate Gdk.Cursor constructor dispatching

Give deprecation warning for the overridden __new__ method on
Gdk.Cursor when more than one argument is used. Recommend using
Gdk.Cursor.new_for_display, new_from_pixbuf, and new_from_pixmap
instead.

https://bugzilla.gnome.org/show_bug.cgi?id=705810
Revert TreeStore and ListStore initializer replacements

Revert changes to Tree/ListStore where the __init__ overrides were replaced
with __new__ overrides which accept column types directly. The issue with
the change is sub-classes of these types can override __init__ themself
passing in their own column types to the super class. These sub-classes
expect the super class to handle column type setup via __init__ and hence
the change described is an API break. This reverts parts of commit:
2f2069c9efcd8f312ce9ffa572df371fbc08822d
gtk-demo: Cleanup deprecated calls throughout demo code

Specify constructor arguments as keyword args for various object
creation calls. Update combobox demo to use bind_property instead of manual
signal connections with update callbacks.
gkt-demo: Change main info/source notebook into a GtkStack

Use the new in 3.10 GtkStack and GtkStackSwitcher for switching between Info
and Source tabs. Beyond giving a newer look and feel to the demo, this also
provides an example for how to use a GtkStack.
gtk-demo: Fix pyflakes error after recent commit
release 3.11.2
configure.ac: post release version bump to 3.11.3