Remove special case GObject base class check when creating GI classes

Replace explicit GObject.Object string name check when calculating the
introspection class hierarchy with a more generalized technique. This allows
any C based wrapper of a GType to "underride" an introspection class
automatically. This currently only handles the case of GObject.Object, but
will be used for fundamentals and GParamSpec.

https://bugzilla.gnome.org/show_bug.cgi?id=631901
Fix mid-argument list callback user data expecting a tuple

Ensure user data arguments are always packed into a tuple during callback
marshaling. This fixes cases where there is mid-argument user data which is
not in the form of a variable length tuple.

https://bugzilla.gnome.org/show_bug.cgi?id=722104
configure.ac: post release version bump to 3.11.5
Update HACKING to include better release tagging instructions
Makefile.am: Fix NEWS and ChangeLog generation under vpath builds

Make sure NEWS generation uses top_srcdir to allow "make release-news" to
work under a vpath build (directory outside the source tree).
Update ChangeLog target to use $(top_srcdir)/missing. This fixes a problem
where running "make dist" under a vpath build directory would include an
empty ChangeLog.
valgrind: Add suppression files for python3.3 and python3.3dm

Add new suppression files for Python 3. Use PYTHON_BASENAME for the
suppression filename in the various make check.valgrind targets. Rename
python.supp to python2.7.supp
Add test for callback user data arguments with following arguments

In this case we can't use the varargs userdata handling. Provides test case for
https://bugzilla.gnome.org/show_bug.cgi?id=722104.
tests: Fix test_torture_profile to return a number from its callback

Return a number from rather than None from the callback passed to
regress_test_torture_signature_2. This fixes a TypeError being raised in
callback return argument marshaling which was ignored by the test suite.
Merge gobject static code into the gi module

Remove gi._gobject._gobject as a separately compiled static module and
move all the files into gi._gi.
Remove dead module initialization macros from "pyglib-python-compat.h"

https://bugzilla.gnome.org/show_bug.cgi?id=712197
Move gobject sub-module Python files into the main gi package

This moves the signalhelper, propertyhelper, and constants Python modules
from gi/_gobject into gi. Keep gi/_gobject/__init__.py around because it is
still needed to maintain the "_PyGObject_API" exposed by pygobject.h. This
allows external modules compiled with prior versions of PyGObject to
continue working with newer versions.

https://bugzilla.gnome.org/show_bug.cgi?id=712197
Merge static PyGLib module into PyGI

Remove gi._glib._glib as a separately compiled module. Move all C files into
pygobject/gi. Remove compilation and use of libpyglib-gi-2.0-python.so as a
shared dependency since we do not distribute header files for it.
Remove unused threading macros.

https://bugzilla.gnome.org/show_bug.cgi?id=712197
Move Python glib options module into gi package

Move gi/_glib/option.py into gi/_option.py. Remove gi/_glib since it is no
longer needed.

https://bugzilla.gnome.org/show_bug.cgi?id=712197
Remove _glib include path from gi module target
tests: Run PyFlakes and PEP8 only on SUBDIRS

Move PyFlakes and PEP8 checks into check-local of the root Makefile.am. Only
run these tools on selective subdirs of top_srcdir. This fixes a problem
where vpath build directories within the srcdir would contain links to the
source files, causing these tools to run multiple times slowing down the
check process.
Fix Python 2 build warning for module definitions

Define PYGLIB_MODULE_ERROR_RETURN as NULL for both Python 2 and 3. This is
needed now that the function signature created with PYGLIB_MODULE_START is
consistent between the two versions.
build: Set PLATFORM_VERSION again to 3.0

We are installing headers to:
/usr/include/pygobject-$(PLATFORM_VERSION)/pygobject.h

If the variable isn't set, then things attempting to use pygobject
obviously fail.

This was a regression from a build system refactoring.
build: Remove _glib directory include from testhelper CFLAGS
demo: Remove spaces from demo sub-directories

Move "Icon View" to IconView and "Tree View" to TreeView. This will help
ability to package the demos in tarball releases in future versions.
demo: Remove "Icon View" and "Tree View" directories
demo: Add TreeModel interface implementation demonstration

Add demo which shows how to implement the Gtk.TreeModel interfaces virtual
methods.