kdirwatch: expand ref counting system to keep account of public instances
this supplements the previous system where we would set the d
of Entry
instances to nullptr. This notably didn't cover KDirWatch instances that
do not have any entries though (such as when ::self() is getting called
but never installs any watches).
to solve this problem we now do object based refcounting where the
public refs and unrefs this
and we keep a record of currently active
references inside the private