shill: cellular: simplify property change notification

Simplify property change notification by using a single mechanism to
handle it instead of two.  Old style notifications are turned into new
style notifications by the modem object.

A few minor style clean ups -- remove std:: where not needed and
ensure that public interfaces are declared as public interfaces in
subclasses (i.e not protected).

BUG=chromium-os:29569
TEST=run unit tests

Change-Id: If8b957d8b6518c95fa1d20bdef7d1ec6a8ed5ea3
Reviewed-on: https://gerrit.chromium.org/gerrit/20395
Tested-by: Jason Glasgow <jglasgow@chromium.org>
Reviewed-by: Nathan J. Williams <njw@chromium.org>
Commit-Ready: Jason Glasgow <jglasgow@chromium.org>
diff --git a/modem.cc b/modem.cc
index a9f2e55..8471397 100644
--- a/modem.cc
+++ b/modem.cc
@@ -135,7 +135,8 @@
   device_->set_modem_state(ConvertMmToCellularModemState(modem_state));
 
   // Give the device a chance to extract any capability-specific properties.
-  device_->OnModemManagerPropertiesChanged(modem_properties);
+  device_->OnDBusPropertiesChanged(GetModemInterface(), modem_properties,
+                                    vector<string>());
 
   manager_->device_info()->RegisterDevice(device_);
 }
@@ -144,19 +145,18 @@
     const string &interface,
     const DBusPropertiesMap &changed_properties,
     const vector<string> &invalidated_properties) {
-  if (device().get()) {
-    device()->OnDBusPropertiesChanged(interface,
+  if (device_.get()) {
+    device_->OnDBusPropertiesChanged(interface,
                                       changed_properties,
                                       invalidated_properties);
   }
 }
 
 void Modem::OnModemManagerPropertiesChanged(
-    const string &/*interface*/,
+    const string &interface,
     const DBusPropertiesMap &properties) {
-  if (device().get()) {
-    device()->OnModemManagerPropertiesChanged(properties);
-  }
+  vector<string> invalidated_properties;
+  OnDBusPropertiesChanged(interface, properties, invalidated_properties);
 }
 
 }  // namespace shill