shill: Complete interaction between DeviceInfo and WiMaxProvider.

WiMaxProvider now creates/registers and destroys/deregisters devices
based on DeviceInfo and RPC callbacks. Also, add missing DeviceInfo
WiMax unit tests, and implement WiMaxService's GetDeviceRpcIdentifier
and GetStorageIdentifier.

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

Change-Id: I9dbf8f785ef824ca5628b96a2e22ec0ef6336b97
Reviewed-on: https://gerrit.chromium.org/gerrit/22807
Commit-Ready: Ben Chan <benchan@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Darin Petkov <petkov@chromium.org>
diff --git a/wimax_service.h b/wimax_service.h
index b7973bc..86a59ed 100644
--- a/wimax_service.h
+++ b/wimax_service.h
@@ -5,6 +5,8 @@
 #ifndef SHILL_WIMAX_SERVICE_H_
 #define SHILL_WIMAX_SERVICE_H_
 
+#include <gtest/gtest_prod.h>  // for FRIEND_TEST
+
 #include "shill/refptr_types.h"
 #include "shill/service.h"
 
@@ -26,9 +28,12 @@
   virtual std::string GetStorageIdentifier() const;
 
  private:
+  FRIEND_TEST(WiMaxServiceTest, GetDeviceRpcId);
+
   virtual std::string GetDeviceRpcId(Error *error);
 
   WiMaxRefPtr wimax_;
+  std::string storage_id_;
 
   DISALLOW_COPY_AND_ASSIGN(WiMaxService);
 };