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/rtnl_listener.h b/rtnl_listener.h
index 0370c92..a1aaba6 100644
--- a/rtnl_listener.h
+++ b/rtnl_listener.h
@@ -5,7 +5,7 @@
 #ifndef SHILL_RTNL_LISTENER_
 #define SHILL_RTNL_LISTENER_
 
-#include <base/callback_old.h>
+#include <base/callback.h>
 
 namespace shill {
 
@@ -14,14 +14,14 @@
 class RTNLListener {
  public:
   RTNLListener(int listen_flags,
-               Callback1<const RTNLMessage &>::Type *callback);
+               const base::Callback<void(const RTNLMessage &)> &callback);
   ~RTNLListener();
 
   void NotifyEvent(int type, const RTNLMessage &msg);
 
  private:
   int listen_flags_;
-  Callback1<const RTNLMessage &>::Type *callback_;
+  base::Callback<void(const RTNLMessage &)> callback_;
 
   DISALLOW_COPY_AND_ASSIGN(RTNLListener);
 };