shill: Cleanup some leaks of DBus-specific types into core shill code.

Also, generalize DBusAdaptor::KeyValueStoreToVariant a bit by using a
more complete DBusProperties::ConvertKeyValueStoreToMap method and add
unit tests.

BUG=chrome-os-partner:9837
TEST=unit tests

Change-Id: Ie8396bc2b0e46b2982360b2af5c34950a1b1015d
Reviewed-on: https://gerrit.chromium.org/gerrit/23122
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Jason Glasgow <jglasgow@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
Commit-Ready: Darin Petkov <petkov@chromium.org>
diff --git a/wimax_service.h b/wimax_service.h
index aaf0119..fbd3e29 100644
--- a/wimax_service.h
+++ b/wimax_service.h
@@ -12,6 +12,7 @@
 
 namespace shill {
 
+class KeyValueStore;
 class WiMaxNetworkProxyInterface;
 
 class WiMaxService : public Service {
@@ -25,7 +26,7 @@
 
   // Returns the parameters to be passed to WiMaxManager.Device.Connect() when
   // connecting to the network associated with this service.
-  void GetConnectParameters(DBusPropertiesMap *parameters) const;
+  void GetConnectParameters(KeyValueStore *parameters) const;
 
   // Returns the RPC object path for the WiMaxManager.Network object associated
   // with this service. Must only be called after |proxy_| is set by Start().