Fixed issue 1057. In this patch I propose to forbid Java-style finalizers for PyObject subclasses. However there is an easy fix available for usecases where it is needed. If the impact of this decision for third party custom types should be too high, one could make it a compiler warning instead and undetake the obligatory change for Jython 3 or so.
Now one can manually restore an object's finalizer via someObject.__ensure_finalizer__. Additionally I cleaned up out-commented and dead code and changed the indentation style in test_finalizers.py to comply with Jython's coding guideline. I also refectored the method names __del__Builtin and __del__Derived to __del_builtin__ and __del_derived__.
Removed the dead import in Py.java and replaced various tab indentations by spaces. Beneath the one I accidentally caused when I had inserted some tmporarily debugging output, the search-and-replace fixed this for 21 other occurences too.
Merged finalization support for newstyle classes
Modified __ensure_finalizer__ to work without using reflection and added some paragraphs to the documentation in FinalizablePyObject (stating use cases fo __ensure_finalizer__ and specifying that it is not possible to overwrite __ensure_finalizer__ on Python side).
Fixed some more tab occurrences and refined the doc of FinalizeTriggerFactory and the factory hook in FinalizeTrigger. Instead of just pointing out that it is needed by JyNI, the doc now states that the hook is reserved for use by JyNI. This is neccessary because if another extension would use it, this would possibly interfere with JyNI, yielding unforeseeable results. And honestly I really can't imagine a usecase for it other than JyNI ;)
Changed test_finalizers.py to avoid plain assert statements and use assertIn, assertEqual etc instead.
Updated merge of newstyle finalization support