First (runnable) failing test for a class hierarchy.

Note the __table_args__ = tuple() statement on line 39, needed to
disable the creation of indexes on the child table. The plan is to
implement this directly in the mixin class, but this lets the tests
run in the first place.
Explicitly register the base tree class.
Set batch to False without having to do it in the subclass if
__mapper_args__ are being overwritte.
Use the base table to lookup columns.

This may need to be refined if someones mixes in tree support in a class
different from the base one. This should be pretty rare though.
Set the base mapper to not check for deleted rows.
Use correct table for operations on nodes.
Make test class parametrizable.
Factor out the base test case in its own module.
Reuse base test case for testing generalized/specialized models.
Compatibility with nose to run tests (I was running unittest).
Let's get back to 100% code coverage.
Merge pull request #27 from GaretJax/24-polymorphic

Support polymorphic tree models
Merge branch 'master' into develop

Conflicts:
	sqlalchemy_mptt/tests/tests_events.py
++version
Make tree classes register themselves.
Adapt testing classes to tree autoregistration.
Merge pull request #29 from GaretJax/autoregistration

Autoregistration
Expire left/right attributes for updated parents (not working).
Merge branch 'develop' into left-right

* develop:
  Adapt testing classes to tree autoregistration.
  Make tree classes register themselves.
Use sqlalchemy's propagation support instead of registering every single
subclass.