The fact that currently finalizers have to be defined in the same module as the corresponding object makes subclassing of objects by user impossible. For example
> [https://github.com/StefanSalewski/gintro#extending-or-sub-classing-widgets](https://github.com/StefanSalewski/gintro#extending-or-sub-classing-widgets) CountButton is a subclass of gtk.Button in user module count_button.nim, so initButton() will not compile as it tries to use a finalizer of gtk module. And without finalizer the gtk widget is not destroyed when the Nim object is collected/destroyed. I have discovered this problem today, and have still no solution. (Well, composition instead of inheritance should work. But that is a serious restriction.)
