shill: Convert code to use the newest version of libchrome.

The biggest change is a switch from using the deprecated
Task and CallbackN mechanisms to using the new Callback
mechanism.

Note: Original CL was https://gerrit.chromium.org/gerrit/16156.
This is logically another patch to that CL, but since the
latter was already merged, and is considered closed by
Gerrit, it's necessary to create a new CL.

BUG=chromium-os:15330
TEST=Build shill and run it on a zgb with a modem. Build and
run unit tests.
CQ-DEPEND=I37628863370323d30cac493764ea28f8ffd42637

Change-Id: I3ae78a3aa44ec167b79f2170d07650ece888254f
Reviewed-on: https://gerrit.chromium.org/gerrit/18030
Reviewed-by: Eric Shienbrood <ers@chromium.org>
Tested-by: Eric Shienbrood <ers@chromium.org>
Commit-Ready: Eric Shienbrood <ers@chromium.org>
diff --git a/glib_io_ready_handler.h b/glib_io_ready_handler.h
index 3a3d310..ffffca1 100644
--- a/glib_io_ready_handler.h
+++ b/glib_io_ready_handler.h
@@ -8,7 +8,7 @@
 #include <stdio.h>
 #include <glib.h>
 
-#include <base/callback_old.h>
+#include <base/callback.h>
 
 #include "shill/io_handler.h"
 
@@ -22,16 +22,18 @@
  public:
   GlibIOReadyHandler(int fd,
                      IOHandler::ReadyMode mode,
-                     Callback1<int>::Type *callback);
+                     const base::Callback<void(int)> &callback);
   ~GlibIOReadyHandler();
 
   virtual void Start();
   virtual void Stop();
 
+  const base::Callback<void(int)> &callback() { return callback_; }
+
  private:
   GIOChannel *channel_;
   GIOCondition condition_;
-  Callback1<int>::Type *callback_;
+  const base::Callback<void(int)> callback_;
   guint source_id_;
 };