shill: Device: Add LinkMonitor

Start link monitoring for technologies for which it is enabled.
Add facilities in the manager and default profile to determine
and persist a list of technologies for which link monitoring
is enabled.  Provide a means for the Device to report the current
rolling average LinkMonitor response time.

BUG=chromium-os:32600
TEST=Unit tests

Change-Id: I39dcc8ce2332d7be3c95d9953b4ae7d7172d7df1
Reviewed-on: https://gerrit.chromium.org/gerrit/29731
Commit-Ready: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
diff --git a/link_monitor.cc b/link_monitor.cc
index 26cb0dd..6bf1208 100644
--- a/link_monitor.cc
+++ b/link_monitor.cc
@@ -28,6 +28,7 @@
 namespace shill {
 
 const unsigned int LinkMonitor::kTestPeriodMilliseconds = 5000;
+const char LinkMonitor::kDefaultLinkMonitorTechnologies[] = "wifi";
 const unsigned int LinkMonitor::kFailureThreshold = 5;
 const unsigned int LinkMonitor::kMaxResponseSampleFilterDepth = 5;