libchromeos: Switch ExportedObjectManager to use DBusObject

Use DBusObject helper class to implement D-Bus object for
ExportedObjectManager.

Now that Variant data type serialization on D-Bus is supported,
switch a number of method handler to be a higher-level C++
callbacks that return native data types which can automatically
be sent over D-Bus with the help of AppendValueToWriter() functions.

Removed remaining scoped_ptr in dbus_utils and dbus_object
and replaced them with std::unique_ptr.

BUG=None
TEST=FEATURES=test emerge-link libchromeos
     USE=buffet P2_TEST_FILTER="buffet::*" FEATURES=test emerge-link platform2

Change-Id: I53bdb5301ec6c3460873c5ac1559fb5d171850a4
Reviewed-on: https://chromium-review.googlesource.com/213963
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Commit-Queue: Alex Vakulenko <avakulenko@chromium.org>
Tested-by: Alex Vakulenko <avakulenko@chromium.org>
diff --git a/buffet/main.cc b/buffet/main.cc
index 66e2cbe..18b7d4d 100644
--- a/buffet/main.cc
+++ b/buffet/main.cc
@@ -93,9 +93,9 @@
   ExportedObjectManager object_manager(
       bus, dbus::ObjectPath(buffet::dbus_constants::kRootServicePath));
   buffet::Manager manager(object_manager.AsWeakPtr());
-  object_manager.Init(
+  object_manager.RegisterAsync(
       sequencer->GetHandler("ObjectManager.Init() failed.", true));
-  manager.Init(sequencer->GetHandler("Manager.Init() failed.", true));
+  manager.RegisterAsync(sequencer->GetHandler("Manager.Init() failed.", true));
   sequencer->OnAllTasksCompletedCall(
       {base::Bind(&TakeServiceOwnership, bus)});
   // Release our handle on the sequencer so that it gets deleted after
diff --git a/buffet/manager.cc b/buffet/manager.cc
index ee7379f..6c359fc 100644
--- a/buffet/manager.cc
+++ b/buffet/manager.cc
@@ -31,7 +31,7 @@
                    object_manager->GetBus(),
                    dbus::ObjectPath(dbus_constants::kManagerServicePath)) {}
 
-void Manager::Init(const AsyncEventSequencer::CompletionAction& cb) {
+void Manager::RegisterAsync(const AsyncEventSequencer::CompletionAction& cb) {
   chromeos::dbus_utils::DBusInterface* itf =
       dbus_object_.AddOrGetInterface(dbus_constants::kManagerInterface);
   itf->AddMethodHandler(dbus_constants::kManagerCheckDeviceRegistered,
diff --git a/buffet/manager.h b/buffet/manager.h
index 2a7995c..e72d1c0 100644
--- a/buffet/manager.h
+++ b/buffet/manager.h
@@ -36,7 +36,7 @@
   explicit Manager(
       const base::WeakPtr<chromeos::dbus_utils::ExportedObjectManager>&
           object_manager);
-  void Init(
+  void RegisterAsync(
       const chromeos::dbus_utils::AsyncEventSequencer::CompletionAction& cb);
 
  private: