[shill] Add support for setting properties.

This CL adds a framework for supporting RPC-exposed properties in Shill.
It also plumbs the code for setting properties on Service objects to prove
the approach.  Device and Manager settings will follow.

BUG=chromium-os:16343
TEST=build shill, run unit tests.

Change-Id: I55869453d6039e688f1a49be9dfb1ba1315efe0a
Reviewed-on: http://gerrit.chromium.org/gerrit/3004
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Chris Masone <cmasone@chromium.org>
diff --git a/ethernet_service.cc b/ethernet_service.cc
index b3e31f7..fe04655 100644
--- a/ethernet_service.cc
+++ b/ethernet_service.cc
@@ -12,6 +12,7 @@
 #include <string>
 
 #include <base/logging.h>
+#include <chromeos/dbus/service_constants.h>
 
 #include "shill/control_interface.h"
 #include "shill/device.h"
@@ -29,8 +30,11 @@
                                  Ethernet *device,
                                  const string &name)
     : Service(control_interface, dispatcher, device, name),
-      ethernet_(device) {
+      ethernet_(device),
+      type_(flimflam::kTypeEthernet) {
   set_auto_connect(true);
+
+  RegisterConstString(flimflam::kTypeProperty, &type_);
 }
 
 EthernetService::~EthernetService() { }