[shill] Enable the getting of properties, and wire to dbus.

PropertyStore exposes getters for iterators pointing to the beginning
and end of its property maps, and a static utility method in DBusAdaptor
uses these to iterate through all the properties in the PropertyStore and build
up a map of property name -> DBus::Variant-wrapped value.

BUG=chromium-os:16343
TEST=unit tests

Change-Id: I85ebbaee167ab2feed0fcf8fe654274de352aca0
Reviewed-on: http://gerrit.chromium.org/gerrit/3359
Reviewed-by: Chris Masone <cmasone@chromium.org>
Tested-by: Chris Masone <cmasone@chromium.org>
diff --git a/device_dbus_adaptor.cc b/device_dbus_adaptor.cc
index 9beec49..8ed8b86 100644
--- a/device_dbus_adaptor.cc
+++ b/device_dbus_adaptor.cc
@@ -51,13 +51,15 @@
 
 map<string, ::DBus::Variant> DeviceDBusAdaptor::GetProperties(
     ::DBus::Error &error) {
-  return map<string, ::DBus::Variant>();
+  map<string, ::DBus::Variant> properties;
+  DBusAdaptor::GetProperties(device_, &properties, &error);
+  return properties;
 }
 
 void DeviceDBusAdaptor::SetProperty(const string& name,
                                     const ::DBus::Variant& value,
                                     ::DBus::Error &error) {
-  DBusAdaptor::DispatchOnType(device_, name, value, error);
+  DBusAdaptor::DispatchOnType(device_, name, value, &error);
 }
 
 void DeviceDBusAdaptor::ClearProperty(const std::string& ,