fix #17: disconnect teardown() when the underlying QObject is destroyed.