clean up tp_dealloc() code and integrate call to tp_finalize() for Py3.4
extend test
be a tiny bit smarter about when to GC_Track for the base type in tp_dealloc()