shill: Create Modem instances for ModemManager.Modem paths.

Each Modem instance will manage a single ModemManager.Modem and a single
Cellular device.

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

Change-Id: I4798224f0bc824bd6d1177e6a6b89f65ca4725ba
Reviewed-on: http://gerrit.chromium.org/gerrit/4356
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Chris Masone <cmasone@chromium.org>
diff --git a/modem_manager_proxy.cc b/modem_manager_proxy.cc
index bf9ba16..a64678e 100644
--- a/modem_manager_proxy.cc
+++ b/modem_manager_proxy.cc
@@ -6,6 +6,8 @@
 
 #include <base/logging.h>
 
+#include "shill/modem_manager.h"
+
 using std::string;
 using std::vector;
 
@@ -33,11 +35,11 @@
 ModemManagerProxy::Proxy::~Proxy() {}
 
 void ModemManagerProxy::Proxy::DeviceAdded(const DBus::Path &device) {
-  LOG(INFO) << "Modem device added: " << device;
+  manager_->AddModem(device);
 }
 
 void ModemManagerProxy::Proxy::DeviceRemoved(const DBus::Path &device) {
-  LOG(INFO) << "Modem device removed: " << device;
+  manager_->RemoveModem(device);
 }
 
 }  // namespace shill