Allow explicit object registration.

This also allows explicit object *un*registration, which means that the object
lifecycle (as exposed to the bus) is now divorced from the object lifecycle as a
C++ object. This allows things like e.g. unregistering an object now but running
its cleanup "later".

BUG=chromium-os:9628
TEST=Adhoc
Built, ran, connected to 3G.

Change-Id: Icfdb96ff47bb6a0d5e86a0774981906f20304c88
Signed-off-by: Elly Jones <ellyjones@chromium.org>
Signed-off-by: Jason Glasgow <jglasgow@chromium.org>

Review URL: http://codereview.chromium.org/6250197
2 files changed