shill: Device: Stop LinkMonitor on selected Service transition

Just as we destroy the current Connection when the selected
Service changes, we should also destroy the current LinkMonitor,
since the previous connection no longer exists.  Do the same
for PortalDetection since they are in the same boat.

BUG=chrome-os-partner:14886
TEST=Unit tests

Change-Id: Ia9754e4d4b18ae76e4a889a097229ab266877a23
Reviewed-on: https://gerrit.chromium.org/gerrit/34280
Commit-Ready: Paul Stewart <pstew@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
diff --git a/device.cc b/device.cc
index 8237c9c..e579a05 100644
--- a/device.cc
+++ b/device.cc
@@ -534,6 +534,8 @@
     // Just in case the Device subclass has not already done so, make
     // sure the previously selected service has its connection removed.
     selected_service_->SetConnection(NULL);
+    StopLinkMonitor();
+    StopPortalDetection();
   }
   selected_service_ = service;
 }