dbus-c++: report DBUS_ERROR_OBJECT_PATH_IN_USE error

This CL modifies ObjectAdaptor::register_obj() to throw an
ErrorObjectPathInUse exception if it fails to register a handler for a
given path in the DBus object hierarchy (i.e. upon a
DBUS_ERROR_OBJECT_PATH_IN_USE error).

BUG=chromium:392903
TEST=Tested the following:
1. `emerge-$BOARD dbus-c++`
2. Manually modify shill to register a DBus adaptor with the same
   object path twice, and verify that an ErrorObjectPathInUse exception
   is raised.

Change-Id: Ied787112ecd04aae67c6b78060d8cedb03eeda73
Reviewed-on: https://chromium-review.googlesource.com/207344
Reviewed-by: mukesh agrawal <[email protected]>
Commit-Queue: Ben Chan <[email protected]>
Tested-by: Ben Chan <[email protected]>
2 files changed