Feature/immediate delete
Switches from using QObject::deleteLater()
to immediately deleting objects when their last QSharedPointer
is deleted.
This has proven necessary because with a deferred delete, a callback can still be invoked between the destruction of one of its captured dependencies and its scheduled deletion, which leads to a crash.