buffet: Use DBus utilities in buffet_client

Use chromeos::dbus_utils::AppendValueToWriter to send a dictionary
over DBus instead of writing it out manually.

Also added a parameter to TestMethod for more testing of DBus
communication between Buffet and buffet_client. Buffet replies
with the same string parameters (like an 'echo' service).

BUG=chromium:374864
TEST=USE=buffet P2_TEST_FILTER="buffet::*" FEATURES=test emerge-link platform2

Change-Id: Ib9d5a8e5173fac894e742cfda5f3fb52ea96f15b
Reviewed-on: https://chromium-review.googlesource.com/212683
Reviewed-by: Christopher Wiley <wiley@chromium.org>
Tested-by: Alex Vakulenko <avakulenko@chromium.org>
Commit-Queue: Alex Vakulenko <avakulenko@chromium.org>
diff --git a/buffet/manager.cc b/buffet/manager.cc
index 749e84a..9a11040 100644
--- a/buffet/manager.cc
+++ b/buffet/manager.cc
@@ -119,8 +119,10 @@
   state_.SetValue(json_state_fragment);
 }
 
-void Manager::HandleTestMethod(chromeos::ErrorPtr* error) {
-  LOG(INFO) << "Received call to test method";
+std::string Manager::HandleTestMethod(chromeos::ErrorPtr* error,
+                                      const std::string& message) {
+  LOG(INFO) << "Received call to test method: " << message;
+  return message;
 }
 
 }  // namespace buffet