shill: Emit Manager.Devices property changed signal.

When a device is register or deregistered with the shill Manager
class, it needs to send out the new list of known devices, which
is kept in the Manager.Devices property. Otherwise, the UI doesn't
know about the device, and doesn't display any device information
in the network details panel. For GSM modems, it also means that
the UI doesn't know the system has a GSM modem, so it doesn't
show the SIM unlock dialog nor the APN selection dropdown.

BUG=chromium-os:28603
TEST=Before-and-after manual testing. With the change, all the
expected device details are displayed.

Change-Id: Ie74913edf3c524e8d1adfb9d564df3ca4c32946d
Reviewed-on: https://gerrit.chromium.org/gerrit/19296
Commit-Ready: Eric Shienbrood <ers@chromium.org>
Reviewed-by: Eric Shienbrood <ers@chromium.org>
Tested-by: Eric Shienbrood <ers@chromium.org>
diff --git a/manager.h b/manager.h
index 6f632ee..0cb9af1 100644
--- a/manager.h
+++ b/manager.h
@@ -205,6 +205,7 @@
   // TODO(cmasone): This should be implemented by filtering |services_|.
   std::vector<std::string> EnumerateWatchedServices(Error *error);
   std::string GetActiveProfileRpcIdentifier(Error *error);
+  void EmitDeviceProperties();
 
   // Unload a service while iterating through |services_|.  Returns true if
   // service was erased (which means the caller loop should not increment