shill: Clean up Callback80211

Make Callback80211 objects access Config80211 through the static getter
instead of via a pointer injected at instantiation time.  Stop
duplicating base::Callback objects and use method overriding to
implement the same thing.

BUG=chromium-os:36122
TEST=Unit tests

Change-Id: I73c4eb0f807240b4ea949fa70a9a3dd3954e91a0
Reviewed-on: https://gerrit.chromium.org/gerrit/37861
Reviewed-by: Wade Guthrie <wdg@chromium.org>
Tested-by: Christopher Wiley <wiley@chromium.org>
Commit-Ready: Christopher Wiley <wiley@chromium.org>
diff --git a/shill_daemon.cc b/shill_daemon.cc
index b8a09ae..7c63b88 100644
--- a/shill_daemon.cc
+++ b/shill_daemon.cc
@@ -47,8 +47,8 @@
                            config->GetRunDirectory(),
                            config->GetStorageDirectory(),
                            config->GetUserStorageDirectoryFormat())),
-      callback80211_output_(config80211_),
-      callback80211_metrics_(config80211_, &metrics_) {
+      callback80211_output_(),
+      callback80211_metrics_(&metrics_) {
 }
 
 Daemon::~Daemon() { }