Fix bug introduced when recursive_invalidate was added.

If a Python object is passed to recursive_invalidate and is a sequence,
each item in the sequence is invalidated
Add unit test for recursive invalidate of a sequence

Change-Id: I70834f8e027bd17a04c0e443bc7d584d1fde26c1
Reviewed-by: John Ehresman <jpe@wingware.com>
Reviewed-by: John Cummings <jcummings2@users.sf.net>
Use non-static method def for instance methods

For methods that can be called as either class or instance methods
(e.g. PySide's QObject.connect), a non-static variant of the
PyMethodDef struct is needed in Python 3.3 when method is used
as an instance method.  Fixes
https://bugreports.qt-project.org/browse/PYSIDE-145

Change-Id: Ie8876a381614f33815f9b6449ea4a61cde9e5cee
Reviewed-by: John Cummings <jcummings2@users.sf.net>