Fix loss of valid dbus objects after unregisterObject

When registering an object that was previously unregistered, but not
garbage collected, activeChildren for the parent node wouldn't be
incremented. Later unregistering objects under that node could garbage
collect the entire tree as a result, resulting in the loss of valid
registered objects.

This is not yet suitable for upstream: if registerObject fails on the
last node, the activeChildren of parent nodes may have been incorrectly
incremented.

Change-Id: I3dc59c2ebd07b237518424fcd8ea7371a22d6d15