shill: Enable the ModemManager.Modem on Cellular device start.

Also, move DBus.Object/Connection properties to the Cellular device,
initializing them to the right values.

BUG=chromium-os:18315
TEST=unit tests, tested on device

Change-Id: I5788ca7aa375afee757fbd96edf96f9d07f29ded
Reviewed-on: http://gerrit.chromium.org/gerrit/4947
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Darin Petkov <petkov@chromium.org>
diff --git a/proxy_factory.h b/proxy_factory.h
index f3441ab..804dc77 100644
--- a/proxy_factory.h
+++ b/proxy_factory.h
@@ -20,6 +20,7 @@
 class Modem;
 class ModemManager;
 class ModemManagerProxyInterface;
+class ModemProxyInterface;
 class SupplicantInterfaceProxyInterface;
 class SupplicantProcessProxyInterface;
 
@@ -41,6 +42,9 @@
       const std::string &path,
       const std::string &service);
 
+  virtual ModemProxyInterface *CreateModemProxy(const std::string &path,
+                                                const std::string &service);
+
   virtual SupplicantProcessProxyInterface *CreateSupplicantProcessProxy(
       const char *dbus_path,
       const char *dbus_addr);