PolicyManager: Remove unnecessary Init() methods.

The PolicyManager::Init() method always return true as it can't
really fail. This patch removes it and simplifies the interface
on the FakePolicyManager to make it easier to use it on Policy
unit testing exposing the FakeState there.

BUG=chromium:358269
TEST=Build and unittests.

Change-Id: Ib27dd41a483b10f164810e18585a8e4b4cb92f5a
Reviewed-on: https://chromium-review.googlesource.com/196968
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
diff --git a/policy_manager/policy_manager.cc b/policy_manager/policy_manager.cc
index c8e7d4e..71f0290 100644
--- a/policy_manager/policy_manager.cc
+++ b/policy_manager/policy_manager.cc
@@ -11,20 +11,12 @@
 
 namespace chromeos_policy_manager {
 
-template <typename T>
-bool InitProvider(scoped_ptr<T>* handle_ptr, T* provider) {
-  handle_ptr->reset(provider);
-  return handle_ptr->get() && (*handle_ptr)->Init();
-}
-
-bool PolicyManager::Init(State* state) {
+PolicyManager::PolicyManager(chromeos_update_engine::ClockInterface* clock,
+                             State* state)
+      : state_(state), clock_(clock) {
   // TODO(deymo): Make it possible to replace this policy with a different
   // implementation with a build-time flag.
   policy_.reset(new ChromeOSPolicy());
-
-  state_.reset(state);
-
-  return true;
 }
 
 }  // namespace chromeos_policy_manager