shill: Icmp: Add a utility for sending ICMP echo requests

The Icmp class is in charge of creating an ICMP-capable socket
and sending echo requests.  In the future it may also be used
for receiving responses.

BUG=chromium:326518
TEST=Unit tests

Change-Id: Ieb4d4538e47582a29a79942619f8b99023dcb3b1
Reviewed-on: https://chromium-review.googlesource.com/179276
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
diff --git a/shill.gyp b/shill.gyp
index 94239e2..772e9f1 100644
--- a/shill.gyp
+++ b/shill.gyp
@@ -294,6 +294,7 @@
         'http_proxy.cc',
         'http_request.cc',
         'http_url.cc',
+        'icmp.cc',
         'ip_address.cc',
         'ip_address_store.cc',
         'ipconfig.cc',
@@ -526,6 +527,7 @@
             'http_proxy_unittest.cc',
             'http_request_unittest.cc',
             'http_url_unittest.cc',
+            'icmp_unittest.cc',
             'ip_address_store_unittest.cc',
             'ip_address_unittest.cc',
             'ipconfig_unittest.cc',