Rename the PolicyManager to UpdateManager.

This change renames the PolicyManager class, directory, tests, etc,
to avoid confusion with libpolicy and its classes.

BUG=chromium:373551
TEST=emerged on link.
CQ-DEPEND=CL:I43081673c7ba409f02273197da7915537bde39c6

Change-Id: Iffa76caa3b95ecbbdba87ab01006d1d8ce35a27f
Reviewed-on: https://chromium-review.googlesource.com/201876
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: David Zeuthen <zeuthen@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
diff --git a/SConstruct b/SConstruct
index bf65864..38c396e 100644
--- a/SConstruct
+++ b/SConstruct
@@ -238,20 +238,6 @@
                    payload_generator/topological_sort.cc
                    payload_signer.cc
                    payload_state.cc
-                   policy_manager/boxed_value.cc
-                   policy_manager/chromeos_policy.cc
-                   policy_manager/evaluation_context.cc
-                   policy_manager/event_loop.cc
-                   policy_manager/policy.cc
-                   policy_manager/policy_manager.cc
-                   policy_manager/real_config_provider.cc
-                   policy_manager/real_device_policy_provider.cc
-                   policy_manager/real_random_provider.cc
-                   policy_manager/real_shill_provider.cc
-                   policy_manager/real_system_provider.cc
-                   policy_manager/real_time_provider.cc
-                   policy_manager/real_updater_provider.cc
-                   policy_manager/state_factory.cc
                    postinstall_runner_action.cc
                    prefs.cc
                    proxy_resolver.cc
@@ -261,6 +247,20 @@
                    terminator.cc
                    update_attempter.cc
                    update_check_scheduler.cc
+                   update_manager/boxed_value.cc
+                   update_manager/chromeos_policy.cc
+                   update_manager/evaluation_context.cc
+                   update_manager/event_loop.cc
+                   update_manager/policy.cc
+                   update_manager/real_config_provider.cc
+                   update_manager/real_device_policy_provider.cc
+                   update_manager/real_random_provider.cc
+                   update_manager/real_shill_provider.cc
+                   update_manager/real_system_provider.cc
+                   update_manager/real_time_provider.cc
+                   update_manager/real_updater_provider.cc
+                   update_manager/state_factory.cc
+                   update_manager/update_manager.cc
                    update_metadata.pb.cc
                    utils.cc""")
 main = ['main.cc']
@@ -299,22 +299,6 @@
                             payload_generator/topological_sort_unittest.cc
                             payload_signer_unittest.cc
                             payload_state_unittest.cc
-                            policy_manager/boxed_value_unittest.cc
-                            policy_manager/chromeos_policy_unittest.cc
-                            policy_manager/evaluation_context_unittest.cc
-                            policy_manager/event_loop_unittest.cc
-                            policy_manager/generic_variables_unittest.cc
-                            policy_manager/pmtest_utils.cc
-                            policy_manager/policy_manager_unittest.cc
-                            policy_manager/prng_unittest.cc
-                            policy_manager/real_config_provider_unittest.cc
-                            policy_manager/real_device_policy_provider_unittest.cc
-                            policy_manager/real_random_provider_unittest.cc
-                            policy_manager/real_shill_provider_unittest.cc
-                            policy_manager/real_system_provider_unittest.cc
-                            policy_manager/real_time_provider_unittest.cc
-                            policy_manager/real_updater_provider_unittest.cc
-                            policy_manager/variable_unittest.cc
                             postinstall_runner_action_unittest.cc
                             prefs_unittest.cc
                             simple_key_value_store_unittest.cc
@@ -323,6 +307,22 @@
                             test_utils.cc
                             update_attempter_unittest.cc
                             update_check_scheduler_unittest.cc
+                            update_manager/boxed_value_unittest.cc
+                            update_manager/chromeos_policy_unittest.cc
+                            update_manager/evaluation_context_unittest.cc
+                            update_manager/event_loop_unittest.cc
+                            update_manager/generic_variables_unittest.cc
+                            update_manager/prng_unittest.cc
+                            update_manager/real_config_provider_unittest.cc
+                            update_manager/real_device_policy_provider_unittest.cc
+                            update_manager/real_random_provider_unittest.cc
+                            update_manager/real_shill_provider_unittest.cc
+                            update_manager/real_system_provider_unittest.cc
+                            update_manager/real_time_provider_unittest.cc
+                            update_manager/real_updater_provider_unittest.cc
+                            update_manager/umtest_utils.cc
+                            update_manager/update_manager_unittest.cc
+                            update_manager/variable_unittest.cc
                             utils_unittest.cc
                             zip_unittest.cc""")
 unittest_main = ['testrunner.cc']
diff --git a/fake_system_state.cc b/fake_system_state.cc
index 8291ba3..8c5ffc9 100644
--- a/fake_system_state.cc
+++ b/fake_system_state.cc
@@ -3,9 +3,9 @@
 // found in the LICENSE file.
 
 #include "update_engine/fake_system_state.h"
-#include "update_engine/policy_manager/fake_state.h"
+#include "update_engine/update_manager/fake_state.h"
 
-using chromeos_policy_manager::FakeState;
+using chromeos_update_manager::FakeState;
 
 namespace chromeos_update_engine {
 
@@ -15,7 +15,7 @@
   : mock_connection_manager_(this),
     mock_update_attempter_(this, &dbus_),
     default_request_params_(this),
-    fake_policy_manager_(&fake_clock_),
+    fake_update_manager_(&fake_clock_),
     clock_(&fake_clock_),
     connection_manager_(&mock_connection_manager_),
     hardware_(&fake_hardware_),
@@ -26,7 +26,7 @@
     update_attempter_(&mock_update_attempter_),
     request_params_(&default_request_params_),
     p2p_manager_(&mock_p2p_manager_),
-    policy_manager_(&fake_policy_manager_),
+    update_manager_(&fake_update_manager_),
     device_policy_(nullptr),
     fake_system_rebooted_(false) {
   mock_payload_state_.Initialize(this);
diff --git a/fake_system_state.h b/fake_system_state.h
index a7f4b6f..0e853c9 100644
--- a/fake_system_state.h
+++ b/fake_system_state.h
@@ -16,10 +16,10 @@
 #include "update_engine/mock_dbus_wrapper.h"
 #include "update_engine/mock_p2p_manager.h"
 #include "update_engine/mock_payload_state.h"
-#include "update_engine/policy_manager/fake_policy_manager.h"
 #include "update_engine/prefs_mock.h"
 #include "update_engine/system_state.h"
 #include "update_engine/update_attempter_mock.h"
+#include "update_engine/update_manager/fake_update_manager.h"
 
 namespace chromeos_update_engine {
 
@@ -82,9 +82,9 @@
     return p2p_manager_;
   }
 
-  virtual inline chromeos_policy_manager::PolicyManager* policy_manager()
+  virtual inline chromeos_update_manager::UpdateManager* update_manager()
       override {
-    return policy_manager_;
+    return update_manager_;
   }
 
   virtual inline bool system_rebooted() override {
@@ -139,9 +139,9 @@
     p2p_manager_ = p2p_manager ? p2p_manager : &mock_p2p_manager_;
   }
 
-  inline void set_policy_manager(
-      chromeos_policy_manager::PolicyManager *policy_manager) {
-    policy_manager_ = policy_manager ? policy_manager : &fake_policy_manager_;
+  inline void set_update_manager(
+      chromeos_update_manager::UpdateManager *update_manager) {
+    update_manager_ = update_manager ? update_manager : &fake_update_manager_;
   }
 
   inline void set_system_rebooted(bool system_rebooted) {
@@ -203,9 +203,9 @@
     return &mock_p2p_manager_;
   }
 
-  inline chromeos_policy_manager::FakePolicyManager* fake_policy_manager() {
-    CHECK(policy_manager_ == &fake_policy_manager_);
-    return &fake_policy_manager_;
+  inline chromeos_update_manager::FakeUpdateManager* fake_update_manager() {
+    CHECK(update_manager_ == &fake_update_manager_);
+    return &fake_update_manager_;
   }
 
  private:
@@ -220,7 +220,7 @@
   testing::NiceMock<UpdateAttempterMock> mock_update_attempter_;
   OmahaRequestParams default_request_params_;
   testing::NiceMock<MockP2PManager> mock_p2p_manager_;
-  chromeos_policy_manager::FakePolicyManager fake_policy_manager_;
+  chromeos_update_manager::FakeUpdateManager fake_update_manager_;
 
   // Pointers to objects that client code can override. They are initialized to
   // the default implementations above.
@@ -234,7 +234,7 @@
   UpdateAttempter* update_attempter_;
   OmahaRequestParams* request_params_;
   P2PManager* p2p_manager_;
-  chromeos_policy_manager::PolicyManager* policy_manager_;
+  chromeos_update_manager::UpdateManager* update_manager_;
 
   // Other object pointers (not preinitialized).
   const policy::DevicePolicy* device_policy_;
diff --git a/policy_manager/fake_policy_manager.h b/policy_manager/fake_policy_manager.h
deleted file mode 100644
index 83c575c..0000000
--- a/policy_manager/fake_policy_manager.h
+++ /dev/null
@@ -1,36 +0,0 @@
-// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_POLICY_MANAGER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_POLICY_MANAGER_H_
-
-#include "update_engine/policy_manager/policy_manager.h"
-
-#include "update_engine/policy_manager/default_policy.h"
-#include "update_engine/policy_manager/fake_state.h"
-
-namespace chromeos_policy_manager {
-
-class FakePolicyManager : public PolicyManager {
- public:
-  explicit FakePolicyManager(chromeos_update_engine::ClockInterface* clock)
-      : PolicyManager(clock, new FakeState()) {
-    // The FakePolicyManager uses a DefaultPolicy.
-    set_policy(new DefaultPolicy());
-  }
-
-  // PolicyManager overrides.
-  using PolicyManager::set_policy;
-
-  FakeState* state() {
-    return reinterpret_cast<FakeState*>(PolicyManager::state());
-  }
-
- private:
-  DISALLOW_COPY_AND_ASSIGN(FakePolicyManager);
-};
-
-}  // namespace chromeos_policy_manager
-
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_POLICY_MANAGER_H_
diff --git a/policy_manager/policy_manager.cc b/policy_manager/policy_manager.cc
deleted file mode 100644
index 71f0290..0000000
--- a/policy_manager/policy_manager.cc
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "update_engine/policy_manager/policy_manager.h"
-
-#include "update_engine/policy_manager/chromeos_policy.h"
-#include "update_engine/policy_manager/state.h"
-
-using base::Closure;
-
-namespace chromeos_policy_manager {
-
-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());
-}
-
-}  // namespace chromeos_policy_manager
diff --git a/policy_manager/provider.h b/policy_manager/provider.h
deleted file mode 100644
index 020a8bc..0000000
--- a/policy_manager/provider.h
+++ /dev/null
@@ -1,26 +0,0 @@
-// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PROVIDER_H_
-
-#include <base/basictypes.h>
-
-namespace chromeos_policy_manager {
-
-// Abstract base class for a policy provider.
-class Provider {
- public:
-  virtual ~Provider() {}
-
- protected:
-  Provider() {}
-
- private:
-  DISALLOW_COPY_AND_ASSIGN(Provider);
-};
-
-}  // namespace chromeos_policy_manager
-
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PROVIDER_H_
diff --git a/policy_manager/real_system_provider_unittest.cc b/policy_manager/real_system_provider_unittest.cc
deleted file mode 100644
index d82c3bd..0000000
--- a/policy_manager/real_system_provider_unittest.cc
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "update_engine/policy_manager/real_system_provider.h"
-
-#include <base/memory/scoped_ptr.h>
-#include <base/time/time.h>
-#include <gtest/gtest.h>
-
-#include "update_engine/fake_hardware.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
-
-namespace chromeos_policy_manager {
-
-class PmRealSystemProviderTest : public ::testing::Test {
- protected:
-  virtual void SetUp() {
-    provider_.reset(new RealSystemProvider(&fake_hardware_));
-    EXPECT_TRUE(provider_->Init());
-  }
-
-  chromeos_update_engine::FakeHardware fake_hardware_;
-  scoped_ptr<RealSystemProvider> provider_;
-};
-
-TEST_F(PmRealSystemProviderTest, InitTest) {
-  PMTEST_EXPECT_NOT_NULL(provider_->var_is_normal_boot_mode());
-  PMTEST_EXPECT_NOT_NULL(provider_->var_is_official_build());
-  PMTEST_EXPECT_NOT_NULL(provider_->var_is_oobe_complete());
-}
-
-TEST_F(PmRealSystemProviderTest, IsOOBECompleteTrue) {
-  fake_hardware_.SetIsOOBEComplete(base::Time());
-  PmTestUtils::ExpectVariableHasValue(true, provider_->var_is_oobe_complete());
-}
-
-TEST_F(PmRealSystemProviderTest, IsOOBECompleteFalse) {
-  fake_hardware_.UnsetIsOOBEComplete();
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_is_oobe_complete());
-}
-
-}  // namespace chromeos_policy_manager
diff --git a/policy_manager/state.h b/policy_manager/state.h
deleted file mode 100644
index 39abbad..0000000
--- a/policy_manager/state.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_H_
-
-#include "update_engine/policy_manager/device_policy_provider.h"
-#include "update_engine/policy_manager/config_provider.h"
-#include "update_engine/policy_manager/random_provider.h"
-#include "update_engine/policy_manager/shill_provider.h"
-#include "update_engine/policy_manager/system_provider.h"
-#include "update_engine/policy_manager/time_provider.h"
-#include "update_engine/policy_manager/updater_provider.h"
-
-namespace chromeos_policy_manager {
-
-// The State class is an interface to the ensemble of providers. This class
-// gives visibility of the state providers to policy implementations.
-class State {
- public:
-  virtual ~State() {}
-
-  // These methods return the given provider.
-  virtual ConfigProvider* config_provider() = 0;
-  virtual DevicePolicyProvider* device_policy_provider() = 0;
-  virtual RandomProvider* random_provider() = 0;
-  virtual ShillProvider* shill_provider() = 0;
-  virtual SystemProvider* system_provider() = 0;
-  virtual TimeProvider* time_provider() = 0;
-  virtual UpdaterProvider* updater_provider() = 0;
-
- protected:
-  State() {}
-
- private:
-  DISALLOW_COPY_AND_ASSIGN(State);
-};
-
-}  // namespace chromeos_policy_manager
-
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_H_
diff --git a/real_system_state.cc b/real_system_state.cc
index 10b66f3..4886b91 100644
--- a/real_system_state.cc
+++ b/real_system_state.cc
@@ -7,7 +7,7 @@
 #include <base/file_util.h>
 
 #include "update_engine/constants.h"
-#include "update_engine/policy_manager/state_factory.h"
+#include "update_engine/update_manager/state_factory.h"
 #include "update_engine/utils.h"
 
 namespace chromeos_update_engine {
@@ -43,16 +43,16 @@
   p2p_manager_.reset(P2PManager::Construct(NULL, &prefs_, "cros_au",
                                            kMaxP2PFilesToKeep));
 
-  // Initialize the PolicyManager using the default State Factory.
-  chromeos_policy_manager::State* pm_state =
-      chromeos_policy_manager::DefaultStateFactory(
+  // Initialize the Update Manager using the default state factory.
+  chromeos_update_manager::State* um_state =
+      chromeos_update_manager::DefaultStateFactory(
           &policy_provider_, &dbus_, this);
-  if (!pm_state) {
-    LOG(ERROR) << "Failed to initialize the policy manager.";
+  if (!um_state) {
+    LOG(ERROR) << "Failed to initialize the Update Manager.";
     return false;
   }
-  policy_manager_.reset(
-      new chromeos_policy_manager::PolicyManager(&clock_, pm_state));
+  update_manager_.reset(
+      new chromeos_update_manager::UpdateManager(&clock_, um_state));
 
   if (!payload_state_.Initialize(this)) {
     LOG(ERROR) << "Failed to initialize the payload state object.";
diff --git a/real_system_state.h b/real_system_state.h
index 28ba254..acbcab9 100644
--- a/real_system_state.h
+++ b/real_system_state.h
@@ -7,18 +7,18 @@
 
 #include "update_engine/system_state.h"
 
-#include <policy/device_policy.h>
 #include <metrics/metrics_library.h>
+#include <policy/device_policy.h>
 
 #include "update_engine/clock.h"
 #include "update_engine/connection_manager.h"
 #include "update_engine/hardware.h"
 #include "update_engine/p2p_manager.h"
 #include "update_engine/payload_state.h"
-#include "update_engine/policy_manager/policy_manager.h"
 #include "update_engine/prefs.h"
 #include "update_engine/real_dbus_wrapper.h"
 #include "update_engine/update_attempter.h"
+#include "update_engine/update_manager/update_manager.h"
 
 namespace chromeos_update_engine {
 
@@ -83,9 +83,9 @@
     return p2p_manager_.get();
   }
 
-  virtual inline chromeos_policy_manager::PolicyManager* policy_manager()
+  virtual inline chromeos_update_manager::UpdateManager* update_manager()
       override {
-    return policy_manager_.get();
+    return update_manager_.get();
   }
 
   virtual inline bool system_rebooted() override {
@@ -130,7 +130,7 @@
 
   scoped_ptr<P2PManager> p2p_manager_;
 
-  scoped_ptr<chromeos_policy_manager::PolicyManager> policy_manager_;
+  scoped_ptr<chromeos_update_manager::UpdateManager> update_manager_;
 
   policy::PolicyProvider policy_provider_;
 
diff --git a/system_state.h b/system_state.h
index a9e3c02..b008095 100644
--- a/system_state.h
+++ b/system_state.h
@@ -7,11 +7,11 @@
 
 class MetricsLibraryInterface;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PolicyManager;
+class UpdateManager;
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
 namespace policy {
 
@@ -84,8 +84,8 @@
   // Returns a pointer to the P2PManager singleton.
   virtual P2PManager* p2p_manager() = 0;
 
-  // Returns a pointer to the PolicyManager singleton.
-  virtual chromeos_policy_manager::PolicyManager* policy_manager() = 0;
+  // Returns a pointer to the UpdateManager singleton.
+  virtual chromeos_update_manager::UpdateManager* update_manager() = 0;
 
   // If true, this is the first instance of the update engine since the system
   // restarted. Important for tracking whether you are running instance of the
diff --git a/policy_manager/boxed_value.cc b/update_manager/boxed_value.cc
similarity index 94%
rename from policy_manager/boxed_value.cc
rename to update_manager/boxed_value.cc
index 02bc0bd..512f7a8 100644
--- a/policy_manager/boxed_value.cc
+++ b/update_manager/boxed_value.cc
@@ -8,15 +8,15 @@
 #include <base/strings/string_number_conversions.h>
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/boxed_value.h"
-#include "update_engine/policy_manager/shill_provider.h"
-#include "update_engine/policy_manager/updater_provider.h"
+#include "update_engine/update_manager/boxed_value.h"
+#include "update_engine/update_manager/shill_provider.h"
+#include "update_engine/update_manager/updater_provider.h"
 #include "update_engine/utils.h"
 
 using std::set;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Template instantiation for common types; used in BoxedValue::ToString().
 // Keep in sync with boxed_value_unitttest.cc.
@@ -160,4 +160,4 @@
   return "Unknown";
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/boxed_value.h b/update_manager/boxed_value.h
similarity index 92%
rename from policy_manager/boxed_value.h
rename to update_manager/boxed_value.h
index 4e26292..69ad0a4 100644
--- a/policy_manager/boxed_value.h
+++ b/update_manager/boxed_value.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_BOXED_VALUE_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_BOXED_VALUE_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_BOXED_VALUE_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_BOXED_VALUE_H_
 
 #include <string>
 
 #include <base/basictypes.h>
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // BoxedValue is a class to hold pointers of a given type that deletes them when
 // the instance goes out of scope, as scoped_ptr<T> does. The main difference
@@ -106,6 +106,6 @@
   DISALLOW_COPY_AND_ASSIGN(BoxedValue);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_BOXED_VALUE_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_BOXED_VALUE_H_
diff --git a/policy_manager/boxed_value_unittest.cc b/update_manager/boxed_value_unittest.cc
similarity index 83%
rename from policy_manager/boxed_value_unittest.cc
rename to update_manager/boxed_value_unittest.cc
index a84604d..b42b361 100644
--- a/policy_manager/boxed_value_unittest.cc
+++ b/update_manager/boxed_value_unittest.cc
@@ -11,19 +11,19 @@
 #include <base/strings/stringprintf.h>
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/boxed_value.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
-#include "update_engine/policy_manager/shill_provider.h"
-#include "update_engine/policy_manager/updater_provider.h"
+#include "update_engine/update_manager/boxed_value.h"
+#include "update_engine/update_manager/shill_provider.h"
+#include "update_engine/update_manager/umtest_utils.h"
+#include "update_engine/update_manager/updater_provider.h"
 
 using base::Time;
 using base::TimeDelta;
-using std::set;
 using std::list;
 using std::map;
+using std::set;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // The DeleterMarker flags a bool variable when the class is destroyed.
 class DeleterMarker {
@@ -46,7 +46,7 @@
                             *val->marker_ ? "true" : "false");
 }
 
-TEST(PmBoxedValueTest, Deleted) {
+TEST(UmBoxedValueTest, Deleted) {
   bool marker = true;
   const DeleterMarker* deleter_marker = new DeleterMarker(&marker);
 
@@ -57,7 +57,7 @@
   EXPECT_TRUE(marker);
 }
 
-TEST(PmBoxedValueTest, MoveConstructor) {
+TEST(UmBoxedValueTest, MoveConstructor) {
   bool marker = true;
   const DeleterMarker* deleter_marker = new DeleterMarker(&marker);
 
@@ -71,7 +71,7 @@
   EXPECT_TRUE(marker);
 }
 
-TEST(PmBoxedValueTest, MixedList) {
+TEST(UmBoxedValueTest, MixedList) {
   list<BoxedValue> lst;
   // This is mostly a compile test.
   lst.emplace_back(new const int(42));
@@ -83,65 +83,65 @@
   EXPECT_TRUE(marker);
 }
 
-TEST(PmBoxedValueTest, MixedMap) {
+TEST(UmBoxedValueTest, MixedMap) {
   map<int, BoxedValue> m;
   m.emplace(42, std::move(BoxedValue(new const string("Hola mundo!"))));
 
   auto it = m.find(42);
   ASSERT_NE(it, m.end());
-  PMTEST_EXPECT_NOT_NULL(it->second.value());
-  PMTEST_EXPECT_NULL(m[33].value());
+  UMTEST_EXPECT_NOT_NULL(it->second.value());
+  UMTEST_EXPECT_NULL(m[33].value());
 }
 
-TEST(PmBoxedValueTest, StringToString) {
+TEST(UmBoxedValueTest, StringToString) {
   EXPECT_EQ("Hej Verden!",
             BoxedValue(new string("Hej Verden!")).ToString());
 }
 
-TEST(PmBoxedValueTest, IntToString) {
+TEST(UmBoxedValueTest, IntToString) {
   EXPECT_EQ("42", BoxedValue(new int(42)).ToString());
 }
 
-TEST(PmBoxedValueTest, Int64ToString) {
+TEST(UmBoxedValueTest, Int64ToString) {
   // -123456789012345 doensn't fit in 32-bit integers.
   EXPECT_EQ("-123456789012345", BoxedValue(
       new int64_t(-123456789012345LL)).ToString());
 }
 
-TEST(PmBoxedValueTest, UnsignedIntToString) {
+TEST(UmBoxedValueTest, UnsignedIntToString) {
   // 4294967295 is the biggest possible 32-bit unsigned integer.
   EXPECT_EQ("4294967295", BoxedValue(new unsigned int(4294967295U)).ToString());
 }
 
-TEST(PmBoxedValueTest, UnsignedInt64ToString) {
+TEST(UmBoxedValueTest, UnsignedInt64ToString) {
   // 18446744073709551615 is the biggest possible 64-bit unsigned integer.
   EXPECT_EQ("18446744073709551615", BoxedValue(
       new uint64_t(18446744073709551615ULL)).ToString());
 }
 
-TEST(PmBoxedValueTest, BoolToString) {
+TEST(UmBoxedValueTest, BoolToString) {
   EXPECT_EQ("false", BoxedValue(new bool(false)).ToString());
   EXPECT_EQ("true", BoxedValue(new bool(true)).ToString());
 }
 
-TEST(PmBoxedValueTest, DoubleToString) {
+TEST(UmBoxedValueTest, DoubleToString) {
   EXPECT_EQ("1.501", BoxedValue(new double(1.501)).ToString());
 }
 
-TEST(PmBoxedValueTest, TimeToString) {
+TEST(UmBoxedValueTest, TimeToString) {
   // Tue Apr 29 22:30:55 UTC 2014 is 1398810655 seconds since the Unix Epoch.
   EXPECT_EQ("4/29/2014 22:30:55 GMT",
             BoxedValue(new Time(Time::FromTimeT(1398810655))).ToString());
 }
 
-TEST(PmBoxedValueTest, TimeDeltaToString) {
+TEST(UmBoxedValueTest, TimeDeltaToString) {
   // 12345 seconds is 3 hours, 25 minutes and 45 seconds.
   EXPECT_EQ("3h25m45s",
             BoxedValue(new TimeDelta(TimeDelta::FromSeconds(12345)))
             .ToString());
 }
 
-TEST(PmBoxedValueTest, ConnectionTypeToString) {
+TEST(UmBoxedValueTest, ConnectionTypeToString) {
   EXPECT_EQ("Ethernet",
             BoxedValue(new ConnectionType(ConnectionType::kEthernet))
             .ToString());
@@ -160,7 +160,7 @@
             .ToString());
 }
 
-TEST(PmBoxedValueTest, ConnectionTetheringToString) {
+TEST(UmBoxedValueTest, ConnectionTetheringToString) {
   EXPECT_EQ("Not Detected",
             BoxedValue(new ConnectionTethering(
                 ConnectionTethering::kNotDetected)).ToString());
@@ -175,7 +175,7 @@
             .ToString());
 }
 
-TEST(PmBoxedValueTest, SetConnectionTypeToString) {
+TEST(UmBoxedValueTest, SetConnectionTypeToString) {
   set<ConnectionType>* set1 = new set<ConnectionType>;
   set1->insert(ConnectionType::kWimax);
   set1->insert(ConnectionType::kEthernet);
@@ -186,7 +186,7 @@
   EXPECT_EQ("Wifi", BoxedValue(set2).ToString());
 }
 
-TEST(PmBoxedValueTest, StageToString) {
+TEST(UmBoxedValueTest, StageToString) {
   EXPECT_EQ("Idle",
             BoxedValue(new Stage(Stage::kIdle)).ToString());
   EXPECT_EQ("Checking For Update",
@@ -207,7 +207,7 @@
             BoxedValue(new Stage(Stage::kAttemptingRollback)).ToString());
 }
 
-TEST(PmBoxedValueTest, DeleterMarkerToString) {
+TEST(UmBoxedValueTest, DeleterMarkerToString) {
   bool marker = false;
   BoxedValue value = BoxedValue(new DeleterMarker(&marker));
   EXPECT_EQ("DeleterMarker:false", value.ToString());
@@ -215,4 +215,4 @@
   EXPECT_EQ("DeleterMarker:true", value.ToString());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/chromeos_policy.cc b/update_manager/chromeos_policy.cc
similarity index 97%
rename from policy_manager/chromeos_policy.cc
rename to update_manager/chromeos_policy.cc
index 2ce8108..6cf1fd1 100644
--- a/policy_manager/chromeos_policy.cc
+++ b/update_manager/chromeos_policy.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/chromeos_policy.h"
+#include "update_engine/update_manager/chromeos_policy.h"
 
 #include <algorithm>
 #include <set>
@@ -11,9 +11,9 @@
 #include <base/logging.h>
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/device_policy_provider.h"
-#include "update_engine/policy_manager/policy_utils.h"
-#include "update_engine/policy_manager/shill_provider.h"
+#include "update_engine/update_manager/device_policy_provider.h"
+#include "update_engine/update_manager/policy_utils.h"
+#include "update_engine/update_manager/shill_provider.h"
 
 using base::Time;
 using base::TimeDelta;
@@ -21,7 +21,7 @@
 using std::set;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 EvalStatus ChromeOSPolicy::UpdateCheckAllowed(
     EvaluationContext* ec, State* state, string* error,
@@ -393,4 +393,4 @@
   return EvalStatus::kSucceeded;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/chromeos_policy.h b/update_manager/chromeos_policy.h
similarity index 82%
rename from policy_manager/chromeos_policy.h
rename to update_manager/chromeos_policy.h
index 1542f9e..3c47c60 100644
--- a/policy_manager/chromeos_policy.h
+++ b/update_manager/chromeos_policy.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_CHROMEOS_POLICY_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_CHROMEOS_POLICY_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_CHROMEOS_POLICY_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_CHROMEOS_POLICY_H_
 
 #include <base/time/time.h>
 #include <gtest/gtest_prod.h>  // for FRIEND_TEST
 
-#include "update_engine/policy_manager/policy.h"
-#include "update_engine/policy_manager/prng.h"
+#include "update_engine/update_manager/policy.h"
+#include "update_engine/update_manager/prng.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Parameters for update scattering, as determined by UpdateNotScattering.
 struct UpdateScatteringResult {
@@ -46,21 +46,21 @@
       bool* result) const override;
 
  private:
-  friend class PmChromeOSPolicyTest;
-  FRIEND_TEST(PmChromeOSPolicyTest,
+  friend class UmChromeOSPolicyTest;
+  FRIEND_TEST(UmChromeOSPolicyTest,
               FirstCheckIsAtMostInitialIntervalAfterStart);
-  FRIEND_TEST(PmChromeOSPolicyTest, ExponentialBackoffIsCapped);
-  FRIEND_TEST(PmChromeOSPolicyTest, UpdateCheckAllowedWaitsForTheTimeout);
-  FRIEND_TEST(PmChromeOSPolicyTest,
+  FRIEND_TEST(UmChromeOSPolicyTest, ExponentialBackoffIsCapped);
+  FRIEND_TEST(UmChromeOSPolicyTest, UpdateCheckAllowedWaitsForTheTimeout);
+  FRIEND_TEST(UmChromeOSPolicyTest,
               UpdateCanStartNotAllowedScatteringNewWaitPeriodApplies);
-  FRIEND_TEST(PmChromeOSPolicyTest,
+  FRIEND_TEST(UmChromeOSPolicyTest,
               UpdateCanStartNotAllowedScatteringPrevWaitPeriodStillApplies);
-  FRIEND_TEST(PmChromeOSPolicyTest,
+  FRIEND_TEST(UmChromeOSPolicyTest,
               UpdateCanStartNotAllowedScatteringNewCountThresholdApplies);
-  FRIEND_TEST(PmChromeOSPolicyTest,
+  FRIEND_TEST(UmChromeOSPolicyTest,
               UpdateCanStartNotAllowedScatteringPrevCountThresholdStillApplies);
-  FRIEND_TEST(PmChromeOSPolicyTest, UpdateCanStartAllowedScatteringSatisfied);
-  FRIEND_TEST(PmChromeOSPolicyTest,
+  FRIEND_TEST(UmChromeOSPolicyTest, UpdateCanStartAllowedScatteringSatisfied);
+  FRIEND_TEST(UmChromeOSPolicyTest,
               UpdateCanStartAllowedInteractivePreventsScattering);
 
   // Auxiliary constant (zero by default).
@@ -106,6 +106,6 @@
   DISALLOW_COPY_AND_ASSIGN(ChromeOSPolicy);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_CHROMEOS_POLICY_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_CHROMEOS_POLICY_H_
diff --git a/policy_manager/chromeos_policy_unittest.cc b/update_manager/chromeos_policy_unittest.cc
similarity index 93%
rename from policy_manager/chromeos_policy_unittest.cc
rename to update_manager/chromeos_policy_unittest.cc
index 88a6d28..0fa96b3 100644
--- a/policy_manager/chromeos_policy_unittest.cc
+++ b/update_manager/chromeos_policy_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/chromeos_policy.h"
+#include "update_engine/update_manager/chromeos_policy.h"
 
 #include <set>
 #include <string>
@@ -11,9 +11,9 @@
 #include <gtest/gtest.h>
 
 #include "update_engine/fake_clock.h"
-#include "update_engine/policy_manager/evaluation_context.h"
-#include "update_engine/policy_manager/fake_state.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
+#include "update_engine/update_manager/evaluation_context.h"
+#include "update_engine/update_manager/fake_state.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::Time;
 using base::TimeDelta;
@@ -21,9 +21,9 @@
 using std::set;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmChromeOSPolicyTest : public ::testing::Test {
+class UmChromeOSPolicyTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     SetUpDefaultClock();
@@ -139,7 +139,7 @@
   ChromeOSPolicy policy_;  // ChromeOSPolicy under test.
 };
 
-TEST_F(PmChromeOSPolicyTest, FirstCheckIsAtMostInitialIntervalAfterStart) {
+TEST_F(UmChromeOSPolicyTest, FirstCheckIsAtMostInitialIntervalAfterStart) {
   Time next_update_check;
 
   ExpectPolicyStatus(EvalStatus::kSucceeded,
@@ -151,7 +151,7 @@
       ChromeOSPolicy::kTimeoutRegularFuzz), next_update_check);
 }
 
-TEST_F(PmChromeOSPolicyTest, ExponentialBackoffIsCapped) {
+TEST_F(UmChromeOSPolicyTest, ExponentialBackoffIsCapped) {
   Time next_update_check;
 
   fake_state_.updater_provider()->var_consecutive_failed_update_checks()->
@@ -167,7 +167,7 @@
       ChromeOSPolicy::kTimeoutRegularFuzz), next_update_check);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCheckAllowedWaitsForTheTimeout) {
+TEST_F(UmChromeOSPolicyTest, UpdateCheckAllowedWaitsForTheTimeout) {
   // We get the next update_check timestamp from the policy's private method
   // and then we check the public method respects that value on the normal
   // case.
@@ -200,7 +200,7 @@
                      &Policy::UpdateCheckAllowed, &result);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartFailsCheckAllowedError) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartFailsCheckAllowedError) {
   // The UpdateCanStart policy fails, not being able to query
   // UpdateCheckAllowed.
 
@@ -214,7 +214,7 @@
                      &Policy::UpdateCanStart, &result, false, update_state);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartNotAllowedCheckDue) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartNotAllowedCheckDue) {
   // The UpdateCanStart policy returns false because we are due for another
   // update check.
 
@@ -229,7 +229,7 @@
   EXPECT_EQ(UpdateCannotStartReason::kCheckDue, result.cannot_start_reason);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartAllowedNoDevicePolicy) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartAllowedNoDevicePolicy) {
   // The UpdateCanStart policy returns true; no device policy is loaded.
 
   SetUpdateCheckAllowed(false);
@@ -247,7 +247,7 @@
   EXPECT_TRUE(result.target_channel.empty());
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartAllowedBlankPolicy) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartAllowedBlankPolicy) {
   // The UpdateCanStart policy returns true; device policy is loaded but imposes
   // no restrictions on updating.
 
@@ -264,7 +264,7 @@
   EXPECT_TRUE(result.target_channel.empty());
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartNotAllowedUpdatesDisabled) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartNotAllowedUpdatesDisabled) {
   // The UpdateCanStart should return false (kAskMeAgainlater) because a device
   // policy is loaded and prohibits updates.
 
@@ -282,7 +282,7 @@
             result.cannot_start_reason);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartFailsScatteringFailed) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartFailsScatteringFailed) {
   // The UpdateCanStart policy fails because the UpdateScattering policy it
   // depends on fails (unset variable).
 
@@ -299,7 +299,7 @@
                      &Policy::UpdateCanStart, &result, false, update_state);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCanStartNotAllowedScatteringNewWaitPeriodApplies) {
   // The UpdateCanStart policy returns false; device policy is loaded and
   // scattering applies due to an unsatisfied wait period, which was newly
@@ -323,7 +323,7 @@
   EXPECT_EQ(0, result.scatter_check_threshold);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCanStartNotAllowedScatteringPrevWaitPeriodStillApplies) {
   // The UpdateCanStart policy returns false w/ kAskMeAgainLater; device policy
   // is loaded and a previously generated scattering period still applies, none
@@ -347,7 +347,7 @@
   EXPECT_EQ(0, result.scatter_check_threshold);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCanStartNotAllowedScatteringNewCountThresholdApplies) {
   // The UpdateCanStart policy returns false; device policy is loaded and
   // scattering applies due to an unsatisfied update check count threshold.
@@ -373,7 +373,7 @@
   EXPECT_GE(5, result.scatter_check_threshold);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCanStartNotAllowedScatteringPrevCountThresholdStillApplies) {
   // The UpdateCanStart policy returns false; device policy is loaded and
   // scattering due to a previously generated count threshold still applies.
@@ -396,7 +396,7 @@
   EXPECT_EQ(3, result.scatter_check_threshold);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartAllowedScatteringSatisfied) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartAllowedScatteringSatisfied) {
   // The UpdateCanStart policy returns true; device policy is loaded and
   // scattering is enabled, but both wait period and check threshold are
   // satisfied.
@@ -421,7 +421,7 @@
   EXPECT_EQ(0, result.scatter_check_threshold);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCanStartAllowedInteractivePreventsScattering) {
   // The UpdateCanStart policy returns true; device policy is loaded and
   // scattering would have applied, except that the update check is interactive
@@ -445,7 +445,7 @@
   EXPECT_EQ(0, result.scatter_check_threshold);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCanStartAllowedOobePreventsScattering) {
   // The UpdateCanStart policy returns true; device policy is loaded and
   // scattering would have applied, except that OOBE was not completed and so it
@@ -470,7 +470,7 @@
   EXPECT_EQ(0, result.scatter_check_threshold);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartAllowedWithAttributes) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartAllowedWithAttributes) {
   // The UpdateCanStart policy returns true; device policy permits both HTTP and
   // P2P updates, as well as a non-empty target channel string.
 
@@ -497,7 +497,7 @@
   EXPECT_EQ("foo-channel", result.target_channel);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartAllowedWithP2PFromUpdater) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartAllowedWithP2PFromUpdater) {
   // The UpdateCanStart policy returns true; device policy forbids both HTTP and
   // P2P updates, but the updater is configured to allow P2P and overrules the
   // setting.
@@ -522,7 +522,7 @@
   EXPECT_EQ("foo-channel", result.target_channel);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCanStartAllowedWithHttpForUnofficialBuild) {
+TEST_F(UmChromeOSPolicyTest, UpdateCanStartAllowedWithHttpForUnofficialBuild) {
   // The UpdateCanStart policy returns true; device policy forbids both HTTP and
   // P2P updates, but marking this an unofficial build overrules the HTTP
   // setting.
@@ -548,7 +548,7 @@
   EXPECT_EQ("foo-channel", result.target_channel);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCurrentConnectionAllowedEthernetDefault) {
+TEST_F(UmChromeOSPolicyTest, UpdateCurrentConnectionAllowedEthernetDefault) {
   // Ethernet is always allowed.
 
   fake_state_.shill_provider()->var_conn_type()->
@@ -560,7 +560,7 @@
   EXPECT_TRUE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCurrentConnectionAllowedWifiDefault) {
+TEST_F(UmChromeOSPolicyTest, UpdateCurrentConnectionAllowedWifiDefault) {
   // Wifi is allowed if not tethered.
 
   fake_state_.shill_provider()->var_conn_type()->
@@ -572,7 +572,7 @@
   EXPECT_TRUE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCurrentConnectionNotAllowedWifiTetheredDefault) {
   // Tethered wifi is not allowed by default.
 
@@ -587,7 +587,7 @@
   EXPECT_FALSE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCurrentConnectionAllowedWifiTetheredPolicyOverride) {
   // Tethered wifi can be allowed by policy.
 
@@ -607,7 +607,7 @@
   EXPECT_TRUE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCurrentConnectionAllowedWimaxDefault) {
+TEST_F(UmChromeOSPolicyTest, UpdateCurrentConnectionAllowedWimaxDefault) {
   // Wimax is always allowed.
 
   fake_state_.shill_provider()->var_conn_type()->
@@ -619,7 +619,7 @@
   EXPECT_TRUE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCurrentConnectionNotAllowedBluetoothDefault) {
   // Bluetooth is never allowed.
 
@@ -632,7 +632,7 @@
   EXPECT_FALSE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCurrentConnectionNotAllowedBluetoothPolicyCannotOverride) {
   // Bluetooth cannot be allowed even by policy.
 
@@ -650,7 +650,7 @@
   EXPECT_FALSE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest, UpdateCurrentConnectionNotAllowedCellularDefault) {
+TEST_F(UmChromeOSPolicyTest, UpdateCurrentConnectionNotAllowedCellularDefault) {
   // Cellular is not allowed by default.
 
   fake_state_.shill_provider()->var_conn_type()->
@@ -662,7 +662,7 @@
   EXPECT_FALSE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCurrentConnectionAllowedCellularPolicyOverride) {
   // Update over cellular can be enabled by policy.
 
@@ -680,7 +680,7 @@
   EXPECT_TRUE(result);
 }
 
-TEST_F(PmChromeOSPolicyTest,
+TEST_F(UmChromeOSPolicyTest,
        UpdateCurrentConnectionAllowedCellularUserOverride) {
   // Update over cellular can be enabled by user settings, but only if policy
   // is present and does not determine allowed connections.
@@ -698,4 +698,4 @@
   EXPECT_TRUE(result);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/config_provider.h b/update_manager/config_provider.h
similarity index 65%
rename from policy_manager/config_provider.h
rename to update_manager/config_provider.h
index b113f2a..55a4d7a 100644
--- a/policy_manager/config_provider.h
+++ b/update_manager/config_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_CONFIG_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_CONFIG_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_CONFIG_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_CONFIG_PROVIDER_H_
 
-#include "update_engine/policy_manager/provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/provider.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Provider for const system configurations. This provider reads the
 // configuration from a file on /etc.
@@ -26,6 +26,6 @@
   DISALLOW_COPY_AND_ASSIGN(ConfigProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_CONFIG_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_CONFIG_PROVIDER_H_
diff --git a/policy_manager/default_policy.h b/update_manager/default_policy.h
similarity index 81%
rename from policy_manager/default_policy.h
rename to update_manager/default_policy.h
index 1e2a471..b3767dc 100644
--- a/policy_manager/default_policy.h
+++ b/update_manager/default_policy.h
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_DEFAULT_POLICY_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_DEFAULT_POLICY_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_DEFAULT_POLICY_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_DEFAULT_POLICY_H_
 
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/policy.h"
+#include "update_engine/update_manager/policy.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // The DefaultPolicy is a safe Policy implementation that doesn't fail. The
 // values returned by this policy are safe default in case of failure of the
-// actual policy being used by the PolicyManager.
+// actual policy being used by the UpdateManager.
 class DefaultPolicy : public Policy {
  public:
   DefaultPolicy() {}
@@ -57,6 +57,6 @@
   DISALLOW_COPY_AND_ASSIGN(DefaultPolicy);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_DEFAULT_POLICY_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_DEFAULT_POLICY_H_
diff --git a/policy_manager/device_policy_provider.h b/update_manager/device_policy_provider.h
similarity index 79%
rename from policy_manager/device_policy_provider.h
rename to update_manager/device_policy_provider.h
index f6bbe2e..f612d55 100644
--- a/policy_manager/device_policy_provider.h
+++ b/update_manager/device_policy_provider.h
@@ -2,20 +2,20 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_DEVICE_POLICY_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_DEVICE_POLICY_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_DEVICE_POLICY_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_DEVICE_POLICY_PROVIDER_H_
 
 #include <set>
 #include <string>
 
-#include <policy/libpolicy.h>
 #include <base/time/time.h>
+#include <policy/libpolicy.h>
 
-#include "update_engine/policy_manager/provider.h"
-#include "update_engine/policy_manager/shill_provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/provider.h"
+#include "update_engine/update_manager/shill_provider.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Provides access to the current DevicePolicy.
 class DevicePolicyProvider : public Provider {
@@ -58,6 +58,6 @@
   DISALLOW_COPY_AND_ASSIGN(DevicePolicyProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_DEVICE_POLICY_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_DEVICE_POLICY_PROVIDER_H_
diff --git a/policy_manager/evaluation_context-inl.h b/update_manager/evaluation_context-inl.h
similarity index 81%
rename from policy_manager/evaluation_context-inl.h
rename to update_manager/evaluation_context-inl.h
index c8e3808..962d0e9 100644
--- a/policy_manager/evaluation_context-inl.h
+++ b/update_manager/evaluation_context-inl.h
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVALUATION_CONTEXT_INL_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVALUATION_CONTEXT_INL_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVALUATION_CONTEXT_INL_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVALUATION_CONTEXT_INL_H_
 
 #include <base/logging.h>
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 template<typename T>
 const T* EvaluationContext::GetValue(Variable<T>* var) {
@@ -36,6 +36,6 @@
   return result;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVALUATION_CONTEXT_INL_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVALUATION_CONTEXT_INL_H_
diff --git a/policy_manager/evaluation_context.cc b/update_manager/evaluation_context.cc
similarity index 96%
rename from policy_manager/evaluation_context.cc
rename to update_manager/evaluation_context.cc
index 3a37618..4fc9a16 100644
--- a/policy_manager/evaluation_context.cc
+++ b/update_manager/evaluation_context.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/evaluation_context.h"
+#include "update_engine/update_manager/evaluation_context.h"
 
 #include <string>
 
@@ -18,7 +18,7 @@
 using chromeos_update_engine::ClockInterface;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 EvaluationContext::EvaluationContext(ClockInterface* clock)
     : clock_(clock),
@@ -160,4 +160,4 @@
   return json_str;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/evaluation_context.h b/update_manager/evaluation_context.h
similarity index 90%
rename from policy_manager/evaluation_context.h
rename to update_manager/evaluation_context.h
index 059256e..97e5b97 100644
--- a/policy_manager/evaluation_context.h
+++ b/update_manager/evaluation_context.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVALUATION_CONTEXT_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVALUATION_CONTEXT_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVALUATION_CONTEXT_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVALUATION_CONTEXT_H_
 
 #include <map>
 
@@ -14,11 +14,11 @@
 #include <base/time/time.h>
 
 #include "update_engine/clock_interface.h"
-#include "update_engine/policy_manager/boxed_value.h"
-#include "update_engine/policy_manager/event_loop.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/boxed_value.h"
+#include "update_engine/update_manager/event_loop.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // The EvaluationContext class is the interface between a policy implementation
 // and the state. The EvaluationContext tracks the variables used by a policy
@@ -69,7 +69,7 @@
   bool IsTimeGreaterThan(base::Time timestamp);
 
   // TODO(deymo): Move the following methods to an interface only visible by the
-  // PolicyManager class and not the policy implementations.
+  // UpdateManager class and not the policy implementations.
 
   // Resets the EvaluationContext to its initial state removing all the
   // non-const cached variables and re-setting the evaluation time. This should
@@ -138,7 +138,7 @@
 
   // The timeout of an evaluation, used to compute the RemainingTime() of an
   // evaluation.
-  // TODO(deymo): Receive the timeout from the PolicyManager. crbug.com/363790
+  // TODO(deymo): Receive the timeout from the UpdateManager. crbug.com/363790
   base::TimeDelta evaluation_timeout_ = base::TimeDelta::FromSeconds(5);
 
   // The timestamp in the ClockInterface::GetMonotonicTime() scale at which the
@@ -151,9 +151,9 @@
   DISALLOW_COPY_AND_ASSIGN(EvaluationContext);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
 // Include the implementation of the template methods.
-#include "update_engine/policy_manager/evaluation_context-inl.h"
+#include "update_engine/update_manager/evaluation_context-inl.h"
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVALUATION_CONTEXT_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVALUATION_CONTEXT_H_
diff --git a/policy_manager/evaluation_context_unittest.cc b/update_manager/evaluation_context_unittest.cc
similarity index 83%
rename from policy_manager/evaluation_context_unittest.cc
rename to update_manager/evaluation_context_unittest.cc
index ccc49c9..33d91a4 100644
--- a/policy_manager/evaluation_context_unittest.cc
+++ b/update_manager/evaluation_context_unittest.cc
@@ -8,12 +8,12 @@
 #include <gtest/gtest.h>
 
 #include "update_engine/fake_clock.h"
-#include "update_engine/policy_manager/evaluation_context.h"
-#include "update_engine/policy_manager/fake_variable.h"
-#include "update_engine/policy_manager/generic_variables.h"
-#include "update_engine/policy_manager/mock_variable.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
 #include "update_engine/test_utils.h"
+#include "update_engine/update_manager/evaluation_context.h"
+#include "update_engine/update_manager/fake_variable.h"
+#include "update_engine/update_manager/generic_variables.h"
+#include "update_engine/update_manager/mock_variable.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::Bind;
 using base::Time;
@@ -41,9 +41,9 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmEvaluationContextTest : public ::testing::Test {
+class UmEvaluationContextTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     // Set the clock to a fixed values.
@@ -84,26 +84,26 @@
                                                   kVariableModePoll};
 };
 
-TEST_F(PmEvaluationContextTest, GetValueFails) {
+TEST_F(UmEvaluationContextTest, GetValueFails) {
   // FakeVariable is initialized as returning NULL.
-  PMTEST_EXPECT_NULL(eval_ctx_->GetValue(&fake_int_var_));
+  UMTEST_EXPECT_NULL(eval_ctx_->GetValue(&fake_int_var_));
 }
 
-TEST_F(PmEvaluationContextTest, GetValueFailsWithInvalidVar) {
-  PMTEST_EXPECT_NULL(eval_ctx_->GetValue(
+TEST_F(UmEvaluationContextTest, GetValueFailsWithInvalidVar) {
+  UMTEST_EXPECT_NULL(eval_ctx_->GetValue(
       reinterpret_cast<Variable<int>*>(NULL)));
 }
 
-TEST_F(PmEvaluationContextTest, GetValueReturns) {
+TEST_F(UmEvaluationContextTest, GetValueReturns) {
   const int* p_fake_int;
 
   fake_int_var_.reset(new int(42));
   p_fake_int = eval_ctx_->GetValue(&fake_int_var_);
-  PMTEST_ASSERT_NOT_NULL(p_fake_int);
+  UMTEST_ASSERT_NOT_NULL(p_fake_int);
   EXPECT_EQ(42, *p_fake_int);
 }
 
-TEST_F(PmEvaluationContextTest, GetValueCached) {
+TEST_F(UmEvaluationContextTest, GetValueCached) {
   const int* p_fake_int;
 
   fake_int_var_.reset(new int(42));
@@ -114,22 +114,22 @@
   fake_int_var_.reset(new int(5));
 
   p_fake_int = eval_ctx_->GetValue(&fake_int_var_);
-  PMTEST_ASSERT_NOT_NULL(p_fake_int);
+  UMTEST_ASSERT_NOT_NULL(p_fake_int);
   EXPECT_EQ(42, *p_fake_int);
 }
 
-TEST_F(PmEvaluationContextTest, GetValueCachesNull) {
+TEST_F(UmEvaluationContextTest, GetValueCachesNull) {
   const int* p_fake_int = eval_ctx_->GetValue(&fake_int_var_);
-  PMTEST_EXPECT_NULL(p_fake_int);
+  UMTEST_EXPECT_NULL(p_fake_int);
 
   fake_int_var_.reset(new int(42));
   // A second attempt to read the variable should not work because this
   // EvaluationContext already got a NULL value.
   p_fake_int = eval_ctx_->GetValue(&fake_int_var_);
-  PMTEST_EXPECT_NULL(p_fake_int);
+  UMTEST_EXPECT_NULL(p_fake_int);
 }
 
-TEST_F(PmEvaluationContextTest, GetValueMixedTypes) {
+TEST_F(UmEvaluationContextTest, GetValueMixedTypes) {
   const int* p_fake_int;
   const string* p_fake_string;
 
@@ -140,15 +140,15 @@
   p_fake_int = eval_ctx_->GetValue(&fake_int_var_);
   p_fake_string = eval_ctx_->GetValue(&fake_poll_var_);
 
-  PMTEST_ASSERT_NOT_NULL(p_fake_int);
+  UMTEST_ASSERT_NOT_NULL(p_fake_int);
   EXPECT_EQ(42, *p_fake_int);
 
-  PMTEST_ASSERT_NOT_NULL(p_fake_string);
+  UMTEST_ASSERT_NOT_NULL(p_fake_string);
   EXPECT_EQ("Hello world!", *p_fake_string);
 }
 
 // Test that we don't schedule an event if there's no variable to wait for.
-TEST_F(PmEvaluationContextTest, RunOnValueChangeOrTimeoutWithoutVariablesTest) {
+TEST_F(UmEvaluationContextTest, RunOnValueChangeOrTimeoutWithoutVariablesTest) {
   fake_const_var_.reset(new string("Hello world!"));
   EXPECT_EQ(*eval_ctx_->GetValue(&fake_const_var_), "Hello world!");
 
@@ -156,7 +156,7 @@
 }
 
 // Test that we don't schedule an event if there's no variable to wait for.
-TEST_F(PmEvaluationContextTest, RunOnValueChangeOrTimeoutWithVariablesTest) {
+TEST_F(UmEvaluationContextTest, RunOnValueChangeOrTimeoutWithVariablesTest) {
   fake_async_var_.reset(new string("Async value"));
   eval_ctx_->GetValue(&fake_async_var_);
 
@@ -175,7 +175,7 @@
 }
 
 // Test that we don't re-schedule the events if we are attending one.
-TEST_F(PmEvaluationContextTest, RunOnValueChangeOrTimeoutCalledTwiceTest) {
+TEST_F(UmEvaluationContextTest, RunOnValueChangeOrTimeoutCalledTwiceTest) {
   fake_async_var_.reset(new string("Async value"));
   eval_ctx_->GetValue(&fake_async_var_);
 
@@ -190,7 +190,7 @@
 }
 
 // Test that we clear the events when destroying the EvaluationContext.
-TEST_F(PmEvaluationContextTest, RemoveObserversAndTimeoutTest) {
+TEST_F(UmEvaluationContextTest, RemoveObserversAndTimeoutTest) {
   fake_async_var_.reset(new string("Async value"));
   eval_ctx_->GetValue(&fake_async_var_);
 
@@ -206,7 +206,7 @@
 }
 
 // Test that we don't schedule an event if there's no variable to wait for.
-TEST_F(PmEvaluationContextTest, RunOnValueChangeOrTimeoutRunsFromTimeoutTest) {
+TEST_F(UmEvaluationContextTest, RunOnValueChangeOrTimeoutRunsFromTimeoutTest) {
   fake_poll_var_.reset(new string("Polled value"));
   eval_ctx_->GetValue(&fake_poll_var_);
 
@@ -220,7 +220,7 @@
 }
 
 // Test that we can delete the EvaluationContext while having pending events.
-TEST_F(PmEvaluationContextTest, ObjectDeletedWithPendingEventsTest) {
+TEST_F(UmEvaluationContextTest, ObjectDeletedWithPendingEventsTest) {
   fake_async_var_.reset(new string("Async value"));
   fake_poll_var_.reset(new string("Polled value"));
   eval_ctx_->GetValue(&fake_async_var_);
@@ -232,7 +232,7 @@
 
 // Test that timed events fired after removal of the EvaluationContext don't
 // crash.
-TEST_F(PmEvaluationContextTest, TimeoutEventAfterDeleteTest) {
+TEST_F(UmEvaluationContextTest, TimeoutEventAfterDeleteTest) {
   FakeVariable<string> fake_short_poll_var = {"fake_short_poll", TimeDelta()};
   fake_short_poll_var.reset(new string("Polled value"));
   eval_ctx_->GetValue(&fake_short_poll_var);
@@ -247,14 +247,14 @@
   EXPECT_FALSE(value);
 }
 
-TEST_F(PmEvaluationContextTest, DefaultTimeout) {
+TEST_F(UmEvaluationContextTest, DefaultTimeout) {
   // Test that the RemainingTime() uses the default timeout on setup.
   EXPECT_CALL(mock_var_async_, GetValue(default_timeout_, _))
       .WillOnce(Return(nullptr));
-  PMTEST_EXPECT_NULL(eval_ctx_->GetValue(&mock_var_async_));
+  UMTEST_EXPECT_NULL(eval_ctx_->GetValue(&mock_var_async_));
 }
 
-TEST_F(PmEvaluationContextTest, TimeoutUpdatesWithMonotonicTime) {
+TEST_F(UmEvaluationContextTest, TimeoutUpdatesWithMonotonicTime) {
   fake_clock_.SetMonotonicTime(
       fake_clock_.GetMonotonicTime() + TimeDelta::FromSeconds(1));
 
@@ -262,10 +262,10 @@
 
   EXPECT_CALL(mock_var_async_, GetValue(timeout, _))
       .WillOnce(Return(nullptr));
-  PMTEST_EXPECT_NULL(eval_ctx_->GetValue(&mock_var_async_));
+  UMTEST_EXPECT_NULL(eval_ctx_->GetValue(&mock_var_async_));
 }
 
-TEST_F(PmEvaluationContextTest, ResetEvaluationResetsTimes) {
+TEST_F(UmEvaluationContextTest, ResetEvaluationResetsTimes) {
   base::Time cur_time = fake_clock_.GetWallclockTime();
   // Advance the time on the clock but don't call ResetEvaluation yet.
   fake_clock_.SetWallclockTime(cur_time + TimeDelta::FromSeconds(4));
@@ -286,7 +286,7 @@
                                             TimeDelta::FromSeconds(1)));
 }
 
-TEST_F(PmEvaluationContextTest, IsTimeGreaterThanSignalsTriggerReevaluation) {
+TEST_F(UmEvaluationContextTest, IsTimeGreaterThanSignalsTriggerReevaluation) {
   EXPECT_FALSE(eval_ctx_->IsTimeGreaterThan(
       fake_clock_.GetWallclockTime() + TimeDelta::FromSeconds(1)));
 
@@ -295,7 +295,7 @@
   EXPECT_TRUE(eval_ctx_->RunOnValueChangeOrTimeout(Bind(&DoNothing)));
 }
 
-TEST_F(PmEvaluationContextTest, IsTimeGreaterThanDoesntRecordPastTimestamps) {
+TEST_F(UmEvaluationContextTest, IsTimeGreaterThanDoesntRecordPastTimestamps) {
   // IsTimeGreaterThan() should ignore timestamps on the past for reevaluation.
   EXPECT_TRUE(eval_ctx_->IsTimeGreaterThan(
       fake_clock_.GetWallclockTime() - TimeDelta::FromSeconds(20)));
@@ -306,7 +306,7 @@
   EXPECT_FALSE(eval_ctx_->RunOnValueChangeOrTimeout(Bind(&DoNothing)));
 }
 
-TEST_F(PmEvaluationContextTest, DumpContext) {
+TEST_F(UmEvaluationContextTest, DumpContext) {
   // |fail_var_| yield "(no value)" since it is unset.
   eval_ctx_->GetValue(&fail_var_);
 
@@ -319,7 +319,7 @@
   eval_ctx_->GetValue(&fake_poll_var_);
 
   // Note that the variables are printed in alphabetical order. Also
-  // see PmEvaluationContextText::SetUp() where the value used for
+  // see UmEvaluationContextText::SetUp() where the value used for
   // |evaluation_start| is set.
   EXPECT_EQ("{\n"
             "   \"evaluation_start\": \"3/2/2006 1:23:45 GMT\",\n"
@@ -332,4 +332,4 @@
             eval_ctx_->DumpContext());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/event_loop.cc b/update_manager/event_loop.cc
similarity index 91%
rename from policy_manager/event_loop.cc
rename to update_manager/event_loop.cc
index dc6eb30..6ae6d36 100644
--- a/policy_manager/event_loop.cc
+++ b/update_manager/event_loop.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/event_loop.h"
+#include "update_engine/update_manager/event_loop.h"
 
 #include <cmath>
 
@@ -23,7 +23,7 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 EventId RunFromMainLoop(const Closure& callback) {
   Closure* callback_p = new Closure(callback);
@@ -48,4 +48,4 @@
   return false;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/event_loop.h b/update_manager/event_loop.h
similarity index 80%
rename from policy_manager/event_loop.h
rename to update_manager/event_loop.h
index 8a1e59e..a24e0b7 100644
--- a/policy_manager/event_loop.h
+++ b/update_manager/event_loop.h
@@ -6,15 +6,15 @@
 // be replaced by the libbase main loop once the process is migrated to that
 // main loop.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVENT_LOOP_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVENT_LOOP_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVENT_LOOP_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVENT_LOOP_H_
 
 #include <glib.h>
 
 #include <base/callback.h>
 #include <base/time/time.h>
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 typedef guint EventId;
 
@@ -32,6 +32,6 @@
 // Returns whether the event was found and removed.
 bool CancelMainLoopEvent(EventId event);
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_EVENT_LOOP_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_EVENT_LOOP_H_
diff --git a/policy_manager/event_loop_unittest.cc b/update_manager/event_loop_unittest.cc
similarity index 92%
rename from policy_manager/event_loop_unittest.cc
rename to update_manager/event_loop_unittest.cc
index e568594..69325fe 100644
--- a/policy_manager/event_loop_unittest.cc
+++ b/update_manager/event_loop_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/event_loop.h"
+#include "update_engine/update_manager/event_loop.h"
 
 #include <base/bind.h>
 #include <gtest/gtest.h>
@@ -27,7 +27,7 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 class EventLoopTest : public ::testing::Test {};
 
@@ -59,4 +59,4 @@
   EXPECT_TRUE(called);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/fake_config_provider.h b/update_manager/fake_config_provider.h
similarity index 62%
rename from policy_manager/fake_config_provider.h
rename to update_manager/fake_config_provider.h
index 7c30190..84a1794 100644
--- a/policy_manager/fake_config_provider.h
+++ b/update_manager/fake_config_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_CONFIG_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_CONFIG_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_CONFIG_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_CONFIG_PROVIDER_H_
 
-#include "update_engine/policy_manager/config_provider.h"
-#include "update_engine/policy_manager/fake_variable.h"
+#include "update_engine/update_manager/config_provider.h"
+#include "update_engine/update_manager/fake_variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Fake implementation of the ConfigProvider base class.
 class FakeConfigProvider : public ConfigProvider {
@@ -27,6 +27,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeConfigProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_CONFIG_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_CONFIG_PROVIDER_H_
diff --git a/policy_manager/fake_device_policy_provider.h b/update_manager/fake_device_policy_provider.h
similarity index 87%
rename from policy_manager/fake_device_policy_provider.h
rename to update_manager/fake_device_policy_provider.h
index 4fa592f..665d2bb 100644
--- a/policy_manager/fake_device_policy_provider.h
+++ b/update_manager/fake_device_policy_provider.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_DEVICE_POLICY_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_DEVICE_POLICY_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_DEVICE_POLICY_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_DEVICE_POLICY_PROVIDER_H_
 
 #include <set>
 #include <string>
 
-#include "update_engine/policy_manager/device_policy_provider.h"
-#include "update_engine/policy_manager/fake_variable.h"
+#include "update_engine/update_manager/device_policy_provider.h"
+#include "update_engine/update_manager/fake_variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Fake implementation of the DevicePolicyProvider base class.
 class FakeDevicePolicyProvider : public DevicePolicyProvider {
@@ -83,6 +83,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeDevicePolicyProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_DEVICE_POLICY_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_DEVICE_POLICY_PROVIDER_H_
diff --git a/policy_manager/fake_random_provider.h b/update_manager/fake_random_provider.h
similarity index 60%
rename from policy_manager/fake_random_provider.h
rename to update_manager/fake_random_provider.h
index bfec2eb..2cf847c 100644
--- a/policy_manager/fake_random_provider.h
+++ b/update_manager/fake_random_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_RANDOM_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_RANDOM_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_RANDOM_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_RANDOM_PROVIDER_H_
 
-#include "update_engine/policy_manager/fake_variable.h"
-#include "update_engine/policy_manager/random_provider.h"
+#include "update_engine/update_manager/fake_variable.h"
+#include "update_engine/update_manager/random_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Fake implementation of the RandomProvider base class.
 class FakeRandomProvider : public RandomProvider {
@@ -23,6 +23,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeRandomProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_RANDOM_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_RANDOM_PROVIDER_H_
diff --git a/policy_manager/fake_shill_provider.h b/update_manager/fake_shill_provider.h
similarity index 75%
rename from policy_manager/fake_shill_provider.h
rename to update_manager/fake_shill_provider.h
index ffe8751..7528cc4 100644
--- a/policy_manager/fake_shill_provider.h
+++ b/update_manager/fake_shill_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_SHILL_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_SHILL_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SHILL_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SHILL_PROVIDER_H_
 
-#include "update_engine/policy_manager/fake_variable.h"
-#include "update_engine/policy_manager/shill_provider.h"
+#include "update_engine/update_manager/fake_variable.h"
+#include "update_engine/update_manager/shill_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Fake implementation of the ShillProvider base class.
 class FakeShillProvider : public ShillProvider {
@@ -43,6 +43,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeShillProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_SHILL_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SHILL_PROVIDER_H_
diff --git a/policy_manager/fake_state.h b/update_manager/fake_state.h
similarity index 71%
rename from policy_manager/fake_state.h
rename to update_manager/fake_state.h
index b6495e5..2af8fe8 100644
--- a/policy_manager/fake_state.h
+++ b/update_manager/fake_state.h
@@ -2,19 +2,19 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_STATE_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_STATE_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_STATE_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_STATE_H_
 
-#include "update_engine/policy_manager/fake_config_provider.h"
-#include "update_engine/policy_manager/fake_device_policy_provider.h"
-#include "update_engine/policy_manager/fake_random_provider.h"
-#include "update_engine/policy_manager/fake_shill_provider.h"
-#include "update_engine/policy_manager/fake_system_provider.h"
-#include "update_engine/policy_manager/fake_time_provider.h"
-#include "update_engine/policy_manager/fake_updater_provider.h"
-#include "update_engine/policy_manager/state.h"
+#include "update_engine/update_manager/fake_config_provider.h"
+#include "update_engine/update_manager/fake_device_policy_provider.h"
+#include "update_engine/update_manager/fake_random_provider.h"
+#include "update_engine/update_manager/fake_shill_provider.h"
+#include "update_engine/update_manager/fake_system_provider.h"
+#include "update_engine/update_manager/fake_time_provider.h"
+#include "update_engine/update_manager/fake_updater_provider.h"
+#include "update_engine/update_manager/state.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A fake State class that creates fake providers for all the providers.
 // This fake can be used in unit testing of Policy subclasses. To fake out the
@@ -74,6 +74,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeState);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_STATE_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_STATE_H_
diff --git a/policy_manager/fake_system_provider.h b/update_manager/fake_system_provider.h
similarity index 72%
rename from policy_manager/fake_system_provider.h
rename to update_manager/fake_system_provider.h
index d86e015..6a6b474 100644
--- a/policy_manager/fake_system_provider.h
+++ b/update_manager/fake_system_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_SYSTEM_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_SYSTEM_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SYSTEM_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SYSTEM_PROVIDER_H_
 
-#include "update_engine/policy_manager/fake_variable.h"
-#include "update_engine/policy_manager/system_provider.h"
+#include "update_engine/update_manager/fake_variable.h"
+#include "update_engine/update_manager/system_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Fake implementation of the SystemProvider base class.
 class FakeSystemProvider : public SystemProvider {
@@ -38,6 +38,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeSystemProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_SYSTEM_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SYSTEM_PROVIDER_H_
diff --git a/policy_manager/fake_time_provider.h b/update_manager/fake_time_provider.h
similarity index 66%
rename from policy_manager/fake_time_provider.h
rename to update_manager/fake_time_provider.h
index d160289..861b70a 100644
--- a/policy_manager/fake_time_provider.h
+++ b/update_manager/fake_time_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_TIME_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_TIME_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_TIME_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_TIME_PROVIDER_H_
 
-#include "update_engine/policy_manager/fake_variable.h"
-#include "update_engine/policy_manager/time_provider.h"
+#include "update_engine/update_manager/fake_variable.h"
+#include "update_engine/update_manager/time_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Fake implementation of the TimeProvider base class.
 class FakeTimeProvider : public TimeProvider {
@@ -30,6 +30,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeTimeProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_TIME_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_TIME_PROVIDER_H_
diff --git a/update_manager/fake_update_manager.h b/update_manager/fake_update_manager.h
new file mode 100644
index 0000000..0831b2e
--- /dev/null
+++ b/update_manager/fake_update_manager.h
@@ -0,0 +1,36 @@
+// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATE_MANAGER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATE_MANAGER_H_
+
+#include "update_engine/update_manager/update_manager.h"
+
+#include "update_engine/update_manager/default_policy.h"
+#include "update_engine/update_manager/fake_state.h"
+
+namespace chromeos_update_manager {
+
+class FakeUpdateManager : public UpdateManager {
+ public:
+  explicit FakeUpdateManager(chromeos_update_engine::ClockInterface* clock)
+      : UpdateManager(clock, new FakeState()) {
+    // The FakeUpdateManager uses a DefaultPolicy.
+    set_policy(new DefaultPolicy());
+  }
+
+  // UpdateManager overrides.
+  using UpdateManager::set_policy;
+
+  FakeState* state() {
+    return reinterpret_cast<FakeState*>(UpdateManager::state());
+  }
+
+ private:
+  DISALLOW_COPY_AND_ASSIGN(FakeUpdateManager);
+};
+
+}  // namespace chromeos_update_manager
+
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATE_MANAGER_H_
diff --git a/policy_manager/fake_updater_provider.h b/update_manager/fake_updater_provider.h
similarity index 87%
rename from policy_manager/fake_updater_provider.h
rename to update_manager/fake_updater_provider.h
index e8fee63..22cb9bf 100644
--- a/policy_manager/fake_updater_provider.h
+++ b/update_manager/fake_updater_provider.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_UPDATER_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_UPDATER_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATER_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATER_PROVIDER_H_
 
 #include <string>
 
-#include "update_engine/policy_manager/fake_variable.h"
-#include "update_engine/policy_manager/updater_provider.h"
+#include "update_engine/update_manager/fake_variable.h"
+#include "update_engine/update_manager/updater_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Fake implementation of the UpdaterProvider base class.
 class FakeUpdaterProvider : public UpdaterProvider {
@@ -89,6 +89,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeUpdaterProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_UPDATER_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATER_PROVIDER_H_
diff --git a/policy_manager/fake_variable.h b/update_manager/fake_variable.h
similarity index 85%
rename from policy_manager/fake_variable.h
rename to update_manager/fake_variable.h
index b1de9d2..0f976e3 100644
--- a/policy_manager/fake_variable.h
+++ b/update_manager/fake_variable.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_VARIABLE_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_VARIABLE_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_VARIABLE_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_VARIABLE_H_
 
 #include <string>
 
 #include <base/memory/scoped_ptr.h>
 
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A fake typed variable to use while testing policy implementations. The
 // variable can be instructed to return any object of its type.
@@ -57,6 +57,6 @@
   DISALLOW_COPY_AND_ASSIGN(FakeVariable);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_FAKE_VARIABLE_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_FAKE_VARIABLE_H_
diff --git a/policy_manager/generic_variables.h b/update_manager/generic_variables.h
similarity index 92%
rename from policy_manager/generic_variables.h
rename to update_manager/generic_variables.h
index b010a33..5831463 100644
--- a/policy_manager/generic_variables.h
+++ b/update_manager/generic_variables.h
@@ -6,16 +6,16 @@
 // used by any state provider to implement simple variables to avoid repeat the
 // same common code on different state providers.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_GENERIC_VARIABLES_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_GENERIC_VARIABLES_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_GENERIC_VARIABLES_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_GENERIC_VARIABLES_H_
 
 #include <string>
 
 #include <base/callback.h>
 
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Variable class returning a copy of a given object using the copy constructor.
 // This template class can be used to define variables that expose as a variable
@@ -65,8 +65,8 @@
       : PollCopyVariable(name, poll_interval, ref, nullptr) {}
 
  protected:
-  FRIEND_TEST(PmPollCopyVariableTest, SimpleTest);
-  FRIEND_TEST(PmPollCopyVariableTest, UseCopyConstructorTest);
+  FRIEND_TEST(UmPollCopyVariableTest, SimpleTest);
+  FRIEND_TEST(UmPollCopyVariableTest, UseCopyConstructorTest);
 
   // Variable override.
   virtual inline const T* GetValue(base::TimeDelta /* timeout */,
@@ -140,7 +140,7 @@
   }
 
  private:
-  FRIEND_TEST(PmCallCopyVariableTest, SimpleTest);
+  FRIEND_TEST(UmCallCopyVariableTest, SimpleTest);
 
   // The function to be called, stored as a base::Callback.
   base::Callback<T(void)> func_;
@@ -201,6 +201,6 @@
   T value_;
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_GENERIC_VARIABLES_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_GENERIC_VARIABLES_H_
diff --git a/policy_manager/generic_variables_unittest.cc b/update_manager/generic_variables_unittest.cc
similarity index 72%
rename from policy_manager/generic_variables_unittest.cc
rename to update_manager/generic_variables_unittest.cc
index 370da04..51ae4bd 100644
--- a/policy_manager/generic_variables_unittest.cc
+++ b/update_manager/generic_variables_unittest.cc
@@ -2,32 +2,32 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/generic_variables.h"
+#include "update_engine/update_manager/generic_variables.h"
 
 #include <base/callback.h>
 #include <base/memory/scoped_ptr.h>
 #include <gtest/gtest.h>
 
-#include "update_engine/policy_manager/pmtest_utils.h"
 #include "update_engine/test_utils.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::TimeDelta;
 using chromeos_update_engine::RunGMainLoopMaxIterations;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmPollCopyVariableTest : public ::testing::Test {};
+class UmPollCopyVariableTest : public ::testing::Test {};
 
 
-TEST_F(PmPollCopyVariableTest, SimpleTest) {
+TEST_F(UmPollCopyVariableTest, SimpleTest) {
   // Tests that copies are generated as intended.
   int source = 5;
   PollCopyVariable<int> var("var", source);
 
   // Generate and validate a copy.
   scoped_ptr<const int> copy_1(var.GetValue(
-          PmTestUtils::DefaultTimeout(), NULL));
-  PMTEST_ASSERT_NOT_NULL(copy_1.get());
+          UmTestUtils::DefaultTimeout(), NULL));
+  UMTEST_ASSERT_NOT_NULL(copy_1.get());
   EXPECT_EQ(5, *copy_1);
 
   // Assign a different value to the source variable.
@@ -37,21 +37,21 @@
   EXPECT_EQ(5, *copy_1);
 
   // Generate and validate a second copy.
-  PmTestUtils::ExpectVariableHasValue(42, &var);
+  UmTestUtils::ExpectVariableHasValue(42, &var);
 }
 
-TEST_F(PmPollCopyVariableTest, SetFlagTest) {
+TEST_F(UmPollCopyVariableTest, SetFlagTest) {
   // Tests that the set flag is being referred to as expected.
   int source = 5;
   bool is_set = false;
   PollCopyVariable<int> var("var", source, &is_set);
 
   // Flag marked unset, nothing should be returned.
-  PmTestUtils::ExpectVariableNotSet(&var);
+  UmTestUtils::ExpectVariableNotSet(&var);
 
   // Flag marked set, we should be getting a value.
   is_set = true;
-  PmTestUtils::ExpectVariableHasValue(5, &var);
+  UmTestUtils::ExpectVariableHasValue(5, &var);
 }
 
 
@@ -69,40 +69,40 @@
 };
 
 
-TEST_F(PmPollCopyVariableTest, UseCopyConstructorTest) {
+TEST_F(UmPollCopyVariableTest, UseCopyConstructorTest) {
   // Ensures that CopyVariables indeed uses the copy contructor.
   const CopyConstructorTestClass source;
   ASSERT_FALSE(source.copied_);
 
   PollCopyVariable<CopyConstructorTestClass> var("var", source);
   scoped_ptr<const CopyConstructorTestClass> copy(
-      var.GetValue(PmTestUtils::DefaultTimeout(), NULL));
-  PMTEST_ASSERT_NOT_NULL(copy.get());
+      var.GetValue(UmTestUtils::DefaultTimeout(), NULL));
+  UMTEST_ASSERT_NOT_NULL(copy.get());
   EXPECT_TRUE(copy->copied_);
 }
 
 
-class PmConstCopyVariableTest : public ::testing::Test {};
+class UmConstCopyVariableTest : public ::testing::Test {};
 
-TEST_F(PmConstCopyVariableTest, SimpleTest) {
+TEST_F(UmConstCopyVariableTest, SimpleTest) {
   int source = 5;
   ConstCopyVariable<int> var("var", source);
-  PmTestUtils::ExpectVariableHasValue(5, &var);
+  UmTestUtils::ExpectVariableHasValue(5, &var);
 
   // Ensure the value is cached.
   source = 42;
-  PmTestUtils::ExpectVariableHasValue(5, &var);
+  UmTestUtils::ExpectVariableHasValue(5, &var);
 }
 
 
-class PmCallCopyVariableTest : public ::testing::Test {};
+class UmCallCopyVariableTest : public ::testing::Test {};
 
 CopyConstructorTestClass test_func(CopyConstructorTestClass* obj) {
   obj->val_++;  // So we can check that the function was called.
   return *obj;
 }
 
-TEST_F(PmCallCopyVariableTest, SimpleTest) {
+TEST_F(UmCallCopyVariableTest, SimpleTest) {
   // Tests that the returned value is generated by copying the value returned by
   // the function call.
 
@@ -115,22 +115,22 @@
   CallCopyVariable<CopyConstructorTestClass> var("var", cb);
 
   scoped_ptr<const CopyConstructorTestClass> copy(
-      var.GetValue(PmTestUtils::DefaultTimeout(), nullptr));
+      var.GetValue(UmTestUtils::DefaultTimeout(), nullptr));
   EXPECT_EQ(6, test_obj.val_);  // Check that the function was called.
-  PMTEST_ASSERT_NOT_NULL(copy.get());
+  UMTEST_ASSERT_NOT_NULL(copy.get());
   EXPECT_TRUE(copy->copied_);
   EXPECT_EQ(12, copy->val_);  // Check that copying occurred once.
 }
 
-TEST_F(PmCallCopyVariableTest, NullTest) {
+TEST_F(UmCallCopyVariableTest, NullTest) {
   // Ensures that the variable returns null when the callback is null.
 
   base::Callback<bool(void)> cb;
   CallCopyVariable<bool> var("var", cb);
-  PmTestUtils::ExpectVariableNotSet(&var);
+  UmTestUtils::ExpectVariableNotSet(&var);
 }
 
-class PmAsyncCopyVariableTest : public ::testing::Test {
+class UmAsyncCopyVariableTest : public ::testing::Test {
  public:
   void TearDown() {
     // No remaining event on the main loop.
@@ -138,24 +138,24 @@
   }
 };
 
-TEST_F(PmAsyncCopyVariableTest, ConstructorTest) {
+TEST_F(UmAsyncCopyVariableTest, ConstructorTest) {
   AsyncCopyVariable<int> var("var");
-  PmTestUtils::ExpectVariableNotSet(&var);
+  UmTestUtils::ExpectVariableNotSet(&var);
   EXPECT_EQ(kVariableModeAsync, var.GetMode());
 }
 
-TEST_F(PmAsyncCopyVariableTest, SetValueTest) {
+TEST_F(UmAsyncCopyVariableTest, SetValueTest) {
   AsyncCopyVariable<int> var("var");
   var.SetValue(5);
-  PmTestUtils::ExpectVariableHasValue(5, &var);
+  UmTestUtils::ExpectVariableHasValue(5, &var);
   // Execute all the pending observers.
   RunGMainLoopMaxIterations(100);
 }
 
-TEST_F(PmAsyncCopyVariableTest, UnsetValueTest) {
+TEST_F(UmAsyncCopyVariableTest, UnsetValueTest) {
   AsyncCopyVariable<int> var("var", 42);
   var.UnsetValue();
-  PmTestUtils::ExpectVariableNotSet(&var);
+  UmTestUtils::ExpectVariableNotSet(&var);
   // Execute all the pending observers.
   RunGMainLoopMaxIterations(100);
 }
@@ -169,7 +169,7 @@
   int calls_count_ = 0;
 };
 
-TEST_F(PmAsyncCopyVariableTest, ObserverCalledTest) {
+TEST_F(UmAsyncCopyVariableTest, ObserverCalledTest) {
   AsyncCopyVariable<int> var("var", 42);
   CallCounterObserver observer;
   var.AddObserver(&observer);
@@ -198,4 +198,4 @@
   var.RemoveObserver(&observer);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/mock_policy.h b/update_manager/mock_policy.h
similarity index 75%
rename from policy_manager/mock_policy.h
rename to update_manager/mock_policy.h
index dbee0c2..262b246 100644
--- a/policy_manager/mock_policy.h
+++ b/update_manager/mock_policy.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_MOCK_POLICY_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_MOCK_POLICY_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_MOCK_POLICY_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_MOCK_POLICY_H_
 
 #include <gmock/gmock.h>
 
-#include "update_engine/policy_manager/policy.h"
+#include "update_engine/update_manager/policy.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A mocked implementation of Policy.
 class MockPolicy : public Policy {
@@ -35,6 +35,6 @@
   DISALLOW_COPY_AND_ASSIGN(MockPolicy);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_MOCK_POLICY_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_MOCK_POLICY_H_
diff --git a/policy_manager/mock_variable.h b/update_manager/mock_variable.h
similarity index 61%
rename from policy_manager/mock_variable.h
rename to update_manager/mock_variable.h
index 73ae8d9..c2ba375 100644
--- a/policy_manager/mock_variable.h
+++ b/update_manager/mock_variable.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_MOCK_VARIABLE_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_MOCK_VARIABLE_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_MOCK_VARIABLE_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_MOCK_VARIABLE_H_
 
 #include <gmock/gmock.h>
 
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // This is a generic mock of the Variable class.
 template<typename T>
@@ -23,6 +23,6 @@
   DISALLOW_COPY_AND_ASSIGN(MockVariable);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_MOCK_VARIABLE_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_MOCK_VARIABLE_H_
diff --git a/policy_manager/policy.cc b/update_manager/policy.cc
similarity index 85%
rename from policy_manager/policy.cc
rename to update_manager/policy.cc
index 32c6439..41ff8c1 100644
--- a/policy_manager/policy.cc
+++ b/update_manager/policy.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/policy.h"
+#include "update_engine/update_manager/policy.h"
 
 #include <string>
 
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 string ToString(EvalStatus status) {
   switch (status) {
diff --git a/policy_manager/policy.h b/update_manager/policy.h
similarity index 92%
rename from policy_manager/policy.h
rename to update_manager/policy.h
index f5fd257..65f236c 100644
--- a/policy_manager/policy.h
+++ b/update_manager/policy.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_POLICY_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_POLICY_H_
 
 #include <string>
 
-#include "update_engine/policy_manager/evaluation_context.h"
-#include "update_engine/policy_manager/state.h"
+#include "update_engine/update_manager/evaluation_context.h"
+#include "update_engine/update_manager/state.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // The three different results of a policy request.
 enum class EvalStatus {
@@ -132,6 +132,6 @@
   DISALLOW_COPY_AND_ASSIGN(Policy);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_POLICY_H_
diff --git a/policy_manager/policy_utils.h b/update_manager/policy_utils.h
similarity index 76%
rename from policy_manager/policy_utils.h
rename to update_manager/policy_utils.h
index 61e0413..9e60167 100644
--- a/policy_manager/policy_utils.h
+++ b/update_manager/policy_utils.h
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_UTILS_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_UTILS_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_POLICY_UTILS_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_POLICY_UTILS_H_
 
-#include "update_engine/policy_manager/policy.h"
+#include "update_engine/update_manager/policy.h"
 
 // Checks that the passed pointer value is not null, returning kFailed on the
 // current context and setting the *error description when it is null. The
@@ -23,4 +23,4 @@
       } \
     } while (false)
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_UTILS_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_POLICY_UTILS_H_
diff --git a/policy_manager/prng.h b/update_manager/prng.h
similarity index 75%
rename from policy_manager/prng.h
rename to update_manager/prng.h
index 2063bb2..ca07e5e 100644
--- a/policy_manager/prng.h
+++ b/update_manager/prng.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PRNG_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PRNG_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_PRNG_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_PRNG_H_
 
 #include <random>
 
 #include <base/logging.h>
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A thread-safe, unsecure, 32-bit pseudo-random number generator based on
 // std::mt19937.
@@ -34,6 +34,6 @@
   DISALLOW_COPY_AND_ASSIGN(PRNG);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PRNG_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_PRNG_H_
diff --git a/policy_manager/prng_unittest.cc b/update_manager/prng_unittest.cc
similarity index 79%
rename from policy_manager/prng_unittest.cc
rename to update_manager/prng_unittest.cc
index cbe7690..4d165b3 100644
--- a/policy_manager/prng_unittest.cc
+++ b/update_manager/prng_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/prng.h"
+#include "update_engine/update_manager/prng.h"
 
 #include <vector>
 
@@ -10,9 +10,9 @@
 
 using std::vector;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-TEST(PmPRNGTest, ShouldBeDeterministic) {
+TEST(UmPRNGTest, ShouldBeDeterministic) {
   PRNG a(42);
   PRNG b(42);
 
@@ -21,7 +21,7 @@
   }
 }
 
-TEST(PmPRNGTest, SeedChangesGeneratedSequence) {
+TEST(UmPRNGTest, SeedChangesGeneratedSequence) {
   PRNG a(42);
   PRNG b(5);
 
@@ -35,7 +35,7 @@
   EXPECT_NE(values_a, values_b);
 }
 
-TEST(PmPRNGTest, IsNotConstant) {
+TEST(UmPRNGTest, IsNotConstant) {
   PRNG prng(5);
 
   uint32_t initial_value = prng.Rand();
@@ -49,7 +49,7 @@
   EXPECT_FALSE(prng_is_constant) << "After 100 iterations.";
 }
 
-TEST(PmPRNGTest, RandCoversRange) {
+TEST(UmPRNGTest, RandCoversRange) {
   PRNG a(42);
   int hits[11] = { 0 };
 
@@ -64,4 +64,4 @@
     EXPECT_LT(0, hit);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/update_manager/provider.h b/update_manager/provider.h
new file mode 100644
index 0000000..3fb1d90
--- /dev/null
+++ b/update_manager/provider.h
@@ -0,0 +1,26 @@
+// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_PROVIDER_H_
+
+#include <base/basictypes.h>
+
+namespace chromeos_update_manager {
+
+// Abstract base class for a policy provider.
+class Provider {
+ public:
+  virtual ~Provider() {}
+
+ protected:
+  Provider() {}
+
+ private:
+  DISALLOW_COPY_AND_ASSIGN(Provider);
+};
+
+}  // namespace chromeos_update_manager
+
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_PROVIDER_H_
diff --git a/policy_manager/random_provider.h b/update_manager/random_provider.h
similarity index 66%
rename from policy_manager/random_provider.h
rename to update_manager/random_provider.h
index 1a63b2d..dede41c 100644
--- a/policy_manager/random_provider.h
+++ b/update_manager/random_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_RANDOM_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_RANDOM_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_RANDOM_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_RANDOM_PROVIDER_H_
 
-#include "update_engine/policy_manager/provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/provider.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Provider of random values.
 class RandomProvider : public Provider {
@@ -28,6 +28,6 @@
   DISALLOW_COPY_AND_ASSIGN(RandomProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_RANDOM_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_RANDOM_PROVIDER_H_
diff --git a/policy_manager/real_config_provider.cc b/update_manager/real_config_provider.cc
similarity index 77%
rename from policy_manager/real_config_provider.cc
rename to update_manager/real_config_provider.cc
index df15ab3..0e76b73 100644
--- a/policy_manager/real_config_provider.cc
+++ b/update_manager/real_config_provider.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_config_provider.h"
+#include "update_engine/update_manager/real_config_provider.h"
 
 #include <base/logging.h>
 
 #include "update_engine/constants.h"
-#include "update_engine/policy_manager/generic_variables.h"
 #include "update_engine/simple_key_value_store.h"
+#include "update_engine/update_manager/generic_variables.h"
 #include "update_engine/utils.h"
 
 using chromeos_update_engine::KeyValueStore;
@@ -16,14 +16,14 @@
 
 namespace {
 
-const char* kConfigFilePath = "/etc/policy_manager.conf";
+const char* kConfigFilePath = "/etc/update_manager.conf";
 
 // Config options:
 const char* kConfigOptsIsOOBEEnabled = "is_oobe_enabled";
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 bool RealConfigProvider::Init() {
   KeyValueStore store;
@@ -33,7 +33,7 @@
   } else {
     if (store.Load(root_prefix_ + chromeos_update_engine::kStatefulPartition +
                    kConfigFilePath)) {
-      LOG(INFO) << "PolicyManager Config loaded from stateful partition.";
+      LOG(INFO) << "UpdateManager Config loaded from stateful partition.";
     } else {
       store.Load(root_prefix_ + kConfigFilePath);
     }
@@ -48,4 +48,4 @@
   return true;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_config_provider.h b/update_manager/real_config_provider.h
similarity index 74%
rename from policy_manager/real_config_provider.h
rename to update_manager/real_config_provider.h
index b3a30e7..e525e38 100644
--- a/policy_manager/real_config_provider.h
+++ b/update_manager/real_config_provider.h
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_CONFIG_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_CONFIG_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_CONFIG_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_CONFIG_PROVIDER_H_
 
 #include <string>
 
 #include <base/memory/scoped_ptr.h>
 
 #include "update_engine/hardware_interface.h"
-#include "update_engine/policy_manager/config_provider.h"
-#include "update_engine/policy_manager/generic_variables.h"
+#include "update_engine/update_manager/config_provider.h"
+#include "update_engine/update_manager/generic_variables.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // ConfigProvider concrete implementation.
 class RealConfigProvider : public ConfigProvider {
@@ -30,7 +30,7 @@
   }
 
  private:
-  friend class PmRealConfigProviderTest;
+  friend class UmRealConfigProviderTest;
 
   // Used for testing. Sets the root prefix, which is by default "". Call this
   // method before calling Init() in order to mock out the place where the files
@@ -49,6 +49,6 @@
   DISALLOW_COPY_AND_ASSIGN(RealConfigProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_CONFIG_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_CONFIG_PROVIDER_H_
diff --git a/policy_manager/real_config_provider_unittest.cc b/update_manager/real_config_provider_unittest.cc
similarity index 67%
rename from policy_manager/real_config_provider_unittest.cc
rename to update_manager/real_config_provider_unittest.cc
index 2ece08b..fc20e36 100644
--- a/policy_manager/real_config_provider_unittest.cc
+++ b/update_manager/real_config_provider_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_config_provider.h"
+#include "update_engine/update_manager/real_config_provider.h"
 
 #include <base/file_util.h>
 #include <base/files/scoped_temp_dir.h>
@@ -11,16 +11,16 @@
 
 #include "update_engine/constants.h"
 #include "update_engine/fake_hardware.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
 #include "update_engine/test_utils.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::TimeDelta;
 using chromeos_update_engine::WriteFileString;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmRealConfigProviderTest : public ::testing::Test {
+class UmRealConfigProviderTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     ASSERT_TRUE(root_dir_.CreateUniqueTempDir());
@@ -31,14 +31,14 @@
   void WriteStatefulConfig(const string& config) {
     base::FilePath kFile(root_dir_.path().value()
                          + chromeos_update_engine::kStatefulPartition
-                         + "/etc/policy_manager.conf");
+                         + "/etc/update_manager.conf");
     ASSERT_TRUE(base::CreateDirectory(kFile.DirName()));
     ASSERT_TRUE(WriteFileString(kFile.value(), config));
   }
 
   void WriteRootfsConfig(const string& config) {
     base::FilePath kFile(root_dir_.path().value()
-                         + "/etc/policy_manager.conf");
+                         + "/etc/update_manager.conf");
     ASSERT_TRUE(base::CreateDirectory(kFile.DirName()));
     ASSERT_TRUE(WriteFileString(kFile.value(), config));
   }
@@ -49,40 +49,40 @@
   base::ScopedTempDir root_dir_;
 };
 
-TEST_F(PmRealConfigProviderTest, InitTest) {
+TEST_F(UmRealConfigProviderTest, InitTest) {
   EXPECT_TRUE(provider_->Init());
-  PMTEST_EXPECT_NOT_NULL(provider_->var_is_oobe_enabled());
+  UMTEST_EXPECT_NOT_NULL(provider_->var_is_oobe_enabled());
 }
 
-TEST_F(PmRealConfigProviderTest, NoFileFoundReturnsDefault) {
+TEST_F(UmRealConfigProviderTest, NoFileFoundReturnsDefault) {
   EXPECT_TRUE(provider_->Init());
-  PmTestUtils::ExpectVariableHasValue(true, provider_->var_is_oobe_enabled());
+  UmTestUtils::ExpectVariableHasValue(true, provider_->var_is_oobe_enabled());
 }
 
-TEST_F(PmRealConfigProviderTest, DontReadStatefulInNormalMode) {
+TEST_F(UmRealConfigProviderTest, DontReadStatefulInNormalMode) {
   fake_hardware_.SetIsNormalBootMode(true);
   WriteStatefulConfig("is_oobe_enabled=false");
 
   EXPECT_TRUE(provider_->Init());
-  PmTestUtils::ExpectVariableHasValue(true, provider_->var_is_oobe_enabled());
+  UmTestUtils::ExpectVariableHasValue(true, provider_->var_is_oobe_enabled());
 }
 
-TEST_F(PmRealConfigProviderTest, ReadStatefulInDevMode) {
+TEST_F(UmRealConfigProviderTest, ReadStatefulInDevMode) {
   fake_hardware_.SetIsNormalBootMode(false);
   WriteRootfsConfig("is_oobe_enabled=true");
   // Since the stateful is present, this should read that one.
   WriteStatefulConfig("is_oobe_enabled=false");
 
   EXPECT_TRUE(provider_->Init());
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_is_oobe_enabled());
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_is_oobe_enabled());
 }
 
-TEST_F(PmRealConfigProviderTest, ReadRootfsIfStatefulNotFound) {
+TEST_F(UmRealConfigProviderTest, ReadRootfsIfStatefulNotFound) {
   fake_hardware_.SetIsNormalBootMode(false);
   WriteRootfsConfig("is_oobe_enabled=false");
 
   EXPECT_TRUE(provider_->Init());
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_is_oobe_enabled());
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_is_oobe_enabled());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_device_policy_provider.cc b/update_manager/real_device_policy_provider.cc
similarity index 93%
rename from policy_manager/real_device_policy_provider.cc
rename to update_manager/real_device_policy_provider.cc
index d0356da..e26ffe0 100644
--- a/policy_manager/real_device_policy_provider.cc
+++ b/update_manager/real_device_policy_provider.cc
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_device_policy_provider.h"
+#include "update_engine/update_manager/real_device_policy_provider.h"
 
 #include <base/logging.h>
 #include <base/time/time.h>
 #include <policy/device_policy.h>
 
-#include "update_engine/policy_manager/generic_variables.h"
-#include "update_engine/policy_manager/real_shill_provider.h"
+#include "update_engine/update_manager/generic_variables.h"
+#include "update_engine/update_manager/real_shill_provider.h"
 #include "update_engine/utils.h"
 
 using base::TimeDelta;
@@ -23,7 +23,7 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 RealDevicePolicyProvider::~RealDevicePolicyProvider() {
   CancelMainLoopEvent(scheduled_refresh_);
@@ -133,4 +133,4 @@
   UpdateVariable(&var_au_p2p_enabled_, &DevicePolicy::GetAuP2PEnabled);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_device_policy_provider.h b/update_manager/real_device_policy_provider.h
similarity index 87%
rename from policy_manager/real_device_policy_provider.h
rename to update_manager/real_device_policy_provider.h
index bfbb299..fdbfcd9 100644
--- a/policy_manager/real_device_policy_provider.h
+++ b/update_manager/real_device_policy_provider.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_DEVICE_POLICY_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_DEVICE_POLICY_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_DEVICE_POLICY_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_DEVICE_POLICY_PROVIDER_H_
 
 #include <set>
 #include <string>
@@ -11,11 +11,11 @@
 #include <gtest/gtest_prod.h>  // for FRIEND_TEST
 #include <policy/libpolicy.h>
 
-#include "update_engine/policy_manager/device_policy_provider.h"
-#include "update_engine/policy_manager/event_loop.h"
-#include "update_engine/policy_manager/generic_variables.h"
+#include "update_engine/update_manager/device_policy_provider.h"
+#include "update_engine/update_manager/event_loop.h"
+#include "update_engine/update_manager/generic_variables.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // DevicePolicyProvider concrete implementation.
 class RealDevicePolicyProvider : public DevicePolicyProvider {
@@ -69,9 +69,9 @@
   }
 
  private:
-  FRIEND_TEST(PmRealDevicePolicyProviderTest, RefreshScheduledTest);
-  FRIEND_TEST(PmRealDevicePolicyProviderTest, NonExistentDevicePolicyReloaded);
-  FRIEND_TEST(PmRealDevicePolicyProviderTest, ValuesUpdated);
+  FRIEND_TEST(UmRealDevicePolicyProviderTest, RefreshScheduledTest);
+  FRIEND_TEST(UmRealDevicePolicyProviderTest, NonExistentDevicePolicyReloaded);
+  FRIEND_TEST(UmRealDevicePolicyProviderTest, ValuesUpdated);
 
   // Schedules a call to periodically refresh the device policy.
   void RefreshDevicePolicyAndReschedule();
@@ -130,6 +130,6 @@
   DISALLOW_COPY_AND_ASSIGN(RealDevicePolicyProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_DEVICE_POLICY_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_DEVICE_POLICY_PROVIDER_H_
diff --git a/policy_manager/real_device_policy_provider_unittest.cc b/update_manager/real_device_policy_provider_unittest.cc
similarity index 73%
rename from policy_manager/real_device_policy_provider_unittest.cc
rename to update_manager/real_device_policy_provider_unittest.cc
index 6d6ccae..3b3d3e9 100644
--- a/policy_manager/real_device_policy_provider_unittest.cc
+++ b/update_manager/real_device_policy_provider_unittest.cc
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_device_policy_provider.h"
+#include "update_engine/update_manager/real_device_policy_provider.h"
 
 #include <base/memory/scoped_ptr.h>
 #include <gtest/gtest.h>
 #include <policy/mock_device_policy.h>
 #include <policy/mock_libpolicy.h>
 
-#include "update_engine/policy_manager/pmtest_utils.h"
 #include "update_engine/test_utils.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::TimeDelta;
 using chromeos_update_engine::RunGMainLoopMaxIterations;
@@ -24,9 +24,9 @@
 using testing::SetArgumentPointee;
 using testing::_;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmRealDevicePolicyProviderTest : public ::testing::Test {
+class UmRealDevicePolicyProviderTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     provider_.reset(new RealDevicePolicyProvider(&mock_policy_provider_));
@@ -63,19 +63,19 @@
   scoped_ptr<RealDevicePolicyProvider> provider_;
 };
 
-TEST_F(PmRealDevicePolicyProviderTest, RefreshScheduledTest) {
+TEST_F(UmRealDevicePolicyProviderTest, RefreshScheduledTest) {
   // Check that the RefreshPolicy gets scheduled by checking the EventId.
   EXPECT_TRUE(provider_->Init());
   EXPECT_NE(kEventIdNull, provider_->scheduled_refresh_);
 }
 
-TEST_F(PmRealDevicePolicyProviderTest, FirstReload) {
+TEST_F(UmRealDevicePolicyProviderTest, FirstReload) {
   // Checks that the policy is reloaded and the DevicePolicy is consulted.
   EXPECT_CALL(mock_policy_provider_, Reload());
   EXPECT_TRUE(provider_->Init());
 }
 
-TEST_F(PmRealDevicePolicyProviderTest, NonExistentDevicePolicyReloaded) {
+TEST_F(UmRealDevicePolicyProviderTest, NonExistentDevicePolicyReloaded) {
   // Checks that the policy is reloaded by RefreshDevicePolicy().
   SetUpNonExistentDevicePolicy();
   EXPECT_CALL(mock_policy_provider_, Reload()).Times(2);
@@ -84,27 +84,27 @@
   provider_->RefreshDevicePolicy();
 }
 
-TEST_F(PmRealDevicePolicyProviderTest, NonExistentDevicePolicyEmptyVariables) {
+TEST_F(UmRealDevicePolicyProviderTest, NonExistentDevicePolicyEmptyVariables) {
   SetUpNonExistentDevicePolicy();
   EXPECT_CALL(mock_policy_provider_, GetDevicePolicy()).Times(0);
   EXPECT_TRUE(provider_->Init());
 
-  PmTestUtils::ExpectVariableHasValue(false,
+  UmTestUtils::ExpectVariableHasValue(false,
                                       provider_->var_device_policy_is_loaded());
 
-  PmTestUtils::ExpectVariableNotSet(provider_->var_release_channel());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_release_channel_delegated());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_update_disabled());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_target_version_prefix());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_scatter_factor());
-  PmTestUtils::ExpectVariableNotSet(
+  UmTestUtils::ExpectVariableNotSet(provider_->var_release_channel());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_release_channel_delegated());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_update_disabled());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_target_version_prefix());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_scatter_factor());
+  UmTestUtils::ExpectVariableNotSet(
       provider_->var_allowed_connection_types_for_update());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_get_owner());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_http_downloads_enabled());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_au_p2p_enabled());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_get_owner());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_http_downloads_enabled());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_au_p2p_enabled());
 }
 
-TEST_F(PmRealDevicePolicyProviderTest, ValuesUpdated) {
+TEST_F(UmRealDevicePolicyProviderTest, ValuesUpdated) {
   SetUpNonExistentDevicePolicy();
   EXPECT_TRUE(provider_->Init());
   Mock::VerifyAndClearExpectations(&mock_policy_provider_);
@@ -120,36 +120,36 @@
 
   provider_->RefreshDevicePolicy();
 
-  PmTestUtils::ExpectVariableHasValue(true,
+  UmTestUtils::ExpectVariableHasValue(true,
                                       provider_->var_device_policy_is_loaded());
 
   // Test that at least one variable is set, to ensure the refresh ocurred.
-  PmTestUtils::ExpectVariableHasValue(string("mychannel"),
+  UmTestUtils::ExpectVariableHasValue(string("mychannel"),
                                       provider_->var_release_channel());
-  PmTestUtils::ExpectVariableNotSet(
+  UmTestUtils::ExpectVariableNotSet(
       provider_->var_allowed_connection_types_for_update());
 }
 
-TEST_F(PmRealDevicePolicyProviderTest, ScatterFactorConverted) {
+TEST_F(UmRealDevicePolicyProviderTest, ScatterFactorConverted) {
   SetUpExistentDevicePolicy();
   EXPECT_CALL(mock_device_policy_, GetScatterFactorInSeconds(_))
       .WillOnce(DoAll(SetArgumentPointee<0>(1234), Return(true)));
   EXPECT_TRUE(provider_->Init());
 
-  PmTestUtils::ExpectVariableHasValue(base::TimeDelta::FromSeconds(1234),
+  UmTestUtils::ExpectVariableHasValue(base::TimeDelta::FromSeconds(1234),
                                       provider_->var_scatter_factor());
 }
 
-TEST_F(PmRealDevicePolicyProviderTest, NegativeScatterFactorIgnored) {
+TEST_F(UmRealDevicePolicyProviderTest, NegativeScatterFactorIgnored) {
   SetUpExistentDevicePolicy();
   EXPECT_CALL(mock_device_policy_, GetScatterFactorInSeconds(_))
       .WillOnce(DoAll(SetArgumentPointee<0>(-1), Return(true)));
   EXPECT_TRUE(provider_->Init());
 
-  PmTestUtils::ExpectVariableNotSet(provider_->var_scatter_factor());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_scatter_factor());
 }
 
-TEST_F(PmRealDevicePolicyProviderTest, AllowedTypesConverted) {
+TEST_F(UmRealDevicePolicyProviderTest, AllowedTypesConverted) {
   SetUpExistentDevicePolicy();
   EXPECT_CALL(mock_device_policy_, GetAllowedConnectionTypesForUpdate(_))
       .WillOnce(DoAll(SetArgumentPointee<0>(
@@ -157,9 +157,9 @@
                       Return(true)));
   EXPECT_TRUE(provider_->Init());
 
-  PmTestUtils::ExpectVariableHasValue(
+  UmTestUtils::ExpectVariableHasValue(
       set<ConnectionType>{ConnectionType::kWifi, ConnectionType::kBluetooth},
       provider_->var_allowed_connection_types_for_update());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_random_provider.cc b/update_manager/real_random_provider.cc
similarity index 90%
rename from policy_manager/real_random_provider.cc
rename to update_manager/real_random_provider.cc
index 17706a9..c151c4f 100644
--- a/policy_manager/real_random_provider.cc
+++ b/update_manager/real_random_provider.cc
@@ -9,8 +9,8 @@
 #include <base/files/scoped_file.h>
 #include <base/strings/stringprintf.h>
 
-#include "update_engine/policy_manager/real_random_provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/real_random_provider.h"
+#include "update_engine/update_manager/variable.h"
 
 using std::string;
 
@@ -21,7 +21,7 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A random seed variable.
 class RandomSeedVariable : public Variable<uint64_t> {
@@ -71,4 +71,4 @@
   return true;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_random_provider.h b/update_manager/real_random_provider.h
similarity index 67%
rename from policy_manager/real_random_provider.h
rename to update_manager/real_random_provider.h
index 07b6e47..d1de79e 100644
--- a/policy_manager/real_random_provider.h
+++ b/update_manager/real_random_provider.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_RANDOM_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_RANDOM_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_RANDOM_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_RANDOM_PROVIDER_H_
 
 #include <base/memory/scoped_ptr.h>
 
-#include "update_engine/policy_manager/random_provider.h"
+#include "update_engine/update_manager/random_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // RandomProvider implementation class.
 class RealRandomProvider : public RandomProvider {
@@ -28,6 +28,6 @@
   DISALLOW_COPY_AND_ASSIGN(RealRandomProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_RANDOM_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_RANDOM_PROVIDER_H_
diff --git a/policy_manager/real_random_provider_unittest.cc b/update_manager/real_random_provider_unittest.cc
similarity index 61%
rename from policy_manager/real_random_provider_unittest.cc
rename to update_manager/real_random_provider_unittest.cc
index f61dbba..55e17fa 100644
--- a/policy_manager/real_random_provider_unittest.cc
+++ b/update_manager/real_random_provider_unittest.cc
@@ -5,19 +5,19 @@
 #include <base/memory/scoped_ptr.h>
 #include <gtest/gtest.h>
 
-#include "update_engine/policy_manager/pmtest_utils.h"
-#include "update_engine/policy_manager/real_random_provider.h"
+#include "update_engine/update_manager/real_random_provider.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::TimeDelta;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmRealRandomProviderTest : public ::testing::Test {
+class UmRealRandomProviderTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     // The provider initializes correctly.
     provider_.reset(new RealRandomProvider());
-    PMTEST_ASSERT_NOT_NULL(provider_.get());
+    UMTEST_ASSERT_NOT_NULL(provider_.get());
     ASSERT_TRUE(provider_->Init());
 
     provider_->var_seed();
@@ -26,28 +26,28 @@
   scoped_ptr<RealRandomProvider> provider_;
 };
 
-TEST_F(PmRealRandomProviderTest, InitFinalize) {
+TEST_F(UmRealRandomProviderTest, InitFinalize) {
   // The provider initializes all variables with valid objects.
-  PMTEST_EXPECT_NOT_NULL(provider_->var_seed());
+  UMTEST_EXPECT_NOT_NULL(provider_->var_seed());
 }
 
-TEST_F(PmRealRandomProviderTest, GetRandomValues) {
+TEST_F(UmRealRandomProviderTest, GetRandomValues) {
   // Should not return the same random seed repeatedly.
   scoped_ptr<const uint64_t> value(
-      provider_->var_seed()->GetValue(PmTestUtils::DefaultTimeout(), nullptr));
-  PMTEST_ASSERT_NOT_NULL(value.get());
+      provider_->var_seed()->GetValue(UmTestUtils::DefaultTimeout(), nullptr));
+  UMTEST_ASSERT_NOT_NULL(value.get());
 
   // Test that at least the returned values are different. This test fails,
   // by design, once every 2^320 runs.
   bool is_same_value = true;
   for (int i = 0; i < 5; i++) {
     scoped_ptr<const uint64_t> other_value(
-        provider_->var_seed()->GetValue(PmTestUtils::DefaultTimeout(),
+        provider_->var_seed()->GetValue(UmTestUtils::DefaultTimeout(),
                                         nullptr));
-    PMTEST_ASSERT_NOT_NULL(other_value.get());
+    UMTEST_ASSERT_NOT_NULL(other_value.get());
     is_same_value = is_same_value && *other_value == *value;
   }
   EXPECT_FALSE(is_same_value);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_shill_provider.cc b/update_manager/real_shill_provider.cc
similarity index 97%
rename from policy_manager/real_shill_provider.cc
rename to update_manager/real_shill_provider.cc
index 4fbb6b2..b7a36d5 100644
--- a/policy_manager/real_shill_provider.cc
+++ b/update_manager/real_shill_provider.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_shill_provider.h"
+#include "update_engine/update_manager/real_shill_provider.h"
 
 #include <string>
 
@@ -26,7 +26,7 @@
 };  // namespace
 
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 RealShillProvider::~RealShillProvider() {
   // Detach signal handler, free manager proxy.
@@ -188,4 +188,4 @@
   obj->HandlePropertyChanged(proxy, name, value);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_shill_provider.h b/update_manager/real_shill_provider.h
similarity index 88%
rename from policy_manager/real_shill_provider.h
rename to update_manager/real_shill_provider.h
index 5af3232..df4f622 100644
--- a/policy_manager/real_shill_provider.h
+++ b/update_manager/real_shill_provider.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_SHILL_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_SHILL_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_SHILL_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_SHILL_PROVIDER_H_
 
 // TODO(garnold) Much of the functionality in this module was adapted from the
 // update engine's connection_manager.  We need to make sure to deprecate use of
@@ -15,13 +15,13 @@
 
 #include "update_engine/clock_interface.h"
 #include "update_engine/dbus_wrapper_interface.h"
-#include "update_engine/policy_manager/generic_variables.h"
-#include "update_engine/policy_manager/shill_provider.h"
+#include "update_engine/update_manager/generic_variables.h"
+#include "update_engine/update_manager/shill_provider.h"
 
 using chromeos_update_engine::ClockInterface;
 using chromeos_update_engine::DBusWrapperInterface;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // ShillProvider concrete implementation.
 class RealShillProvider : public ShillProvider {
@@ -92,6 +92,6 @@
   DISALLOW_COPY_AND_ASSIGN(RealShillProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_SHILL_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_SHILL_PROVIDER_H_
diff --git a/policy_manager/real_shill_provider_unittest.cc b/update_manager/real_shill_provider_unittest.cc
similarity index 88%
rename from policy_manager/real_shill_provider_unittest.cc
rename to update_manager/real_shill_provider_unittest.cc
index 42c2ef6..faa6e05 100644
--- a/policy_manager/real_shill_provider_unittest.cc
+++ b/update_manager/real_shill_provider_unittest.cc
@@ -12,9 +12,9 @@
 
 #include "update_engine/fake_clock.h"
 #include "update_engine/mock_dbus_wrapper.h"
-#include "update_engine/policy_manager/real_shill_provider.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
 #include "update_engine/test_utils.h"
+#include "update_engine/update_manager/real_shill_provider.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::Time;
 using base::TimeDelta;
@@ -58,9 +58,9 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmRealShillProviderTest : public ::testing::Test {
+class UmRealShillProviderTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     // By default, initialize the provider so that it gets an initial connection
@@ -82,7 +82,7 @@
       Shutdown();
 
     provider_.reset(new RealShillProvider(&mock_dbus_, &fake_clock_));
-    PMTEST_ASSERT_NOT_NULL(provider_.get());
+    UMTEST_ASSERT_NOT_NULL(provider_.get());
     fake_clock_.SetWallclockTime(InitTime());
 
     // A DBus connection should only be obtained once.
@@ -246,8 +246,8 @@
     g_hash_table_unref(service_properties);
 
     // Query the connection status, ensure last change time reported correctly.
-    PmTestUtils::ExpectVariableHasValue(true, provider_->var_is_connected());
-    PmTestUtils::ExpectVariableHasValue(conn_change_time,
+    UmTestUtils::ExpectVariableHasValue(true, provider_->var_is_connected());
+    UmTestUtils::ExpectVariableHasValue(conn_change_time,
                                         provider_->var_conn_last_changed());
 
     // Write the connection change time to the output argument.
@@ -268,9 +268,9 @@
                             &conn_change_time);
 
     // Query the connection type, ensure last change time did not change.
-    PmTestUtils::ExpectVariableHasValue(expected_conn_type,
+    UmTestUtils::ExpectVariableHasValue(expected_conn_type,
                                         provider_->var_conn_type());
-    PmTestUtils::ExpectVariableHasValue(conn_change_time,
+    UmTestUtils::ExpectVariableHasValue(conn_change_time,
                                         provider_->var_conn_last_changed());
   }
 
@@ -286,9 +286,9 @@
                             shill_tethering_str, &conn_change_time);
 
     // Query the connection tethering, ensure last change time did not change.
-    PmTestUtils::ExpectVariableHasValue(expected_conn_tethering,
+    UmTestUtils::ExpectVariableHasValue(expected_conn_tethering,
                                         provider_->var_conn_tethering());
-    PmTestUtils::ExpectVariableHasValue(conn_change_time,
+    UmTestUtils::ExpectVariableHasValue(conn_change_time,
                                         provider_->var_conn_last_changed());
   }
 
@@ -301,16 +301,16 @@
 
 // Query the connection status, type and time last changed, as they were set
 // during initialization (no signals).
-TEST_F(PmRealShillProviderTest, ReadBaseValues) {
+TEST_F(UmRealShillProviderTest, ReadBaseValues) {
   // Query the provider variables.
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_is_connected());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_conn_type());
-  PmTestUtils::ExpectVariableHasValue(InitTime(),
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_is_connected());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_conn_type());
+  UmTestUtils::ExpectVariableHasValue(InitTime(),
                                       provider_->var_conn_last_changed());
 }
 
 // Test that Ethernet connection is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTypeEthernet) {
+TEST_F(UmRealShillProviderTest, ReadConnTypeEthernet) {
   SetupConnectionAndTestType(kFakeEthernetServicePath,
                              kFakeEthernetServiceProxy,
                              shill::kTypeEthernet,
@@ -318,7 +318,7 @@
 }
 
 // Test that Wifi connection is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTypeWifi) {
+TEST_F(UmRealShillProviderTest, ReadConnTypeWifi) {
   SetupConnectionAndTestType(kFakeWifiServicePath,
                              kFakeWifiServiceProxy,
                              shill::kTypeWifi,
@@ -326,7 +326,7 @@
 }
 
 // Test that Wimax connection is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTypeWimax) {
+TEST_F(UmRealShillProviderTest, ReadConnTypeWimax) {
   SetupConnectionAndTestType(kFakeWimaxServicePath,
                              kFakeWimaxServiceProxy,
                              shill::kTypeWimax,
@@ -334,7 +334,7 @@
 }
 
 // Test that Bluetooth connection is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTypeBluetooth) {
+TEST_F(UmRealShillProviderTest, ReadConnTypeBluetooth) {
   SetupConnectionAndTestType(kFakeBluetoothServicePath,
                              kFakeBluetoothServiceProxy,
                              shill::kTypeBluetooth,
@@ -342,7 +342,7 @@
 }
 
 // Test that Cellular connection is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTypeCellular) {
+TEST_F(UmRealShillProviderTest, ReadConnTypeCellular) {
   SetupConnectionAndTestType(kFakeCellularServicePath,
                              kFakeCellularServiceProxy,
                              shill::kTypeCellular,
@@ -350,7 +350,7 @@
 }
 
 // Test that an unknown connection is identified as such.
-TEST_F(PmRealShillProviderTest, ReadConnTypeUnknown) {
+TEST_F(UmRealShillProviderTest, ReadConnTypeUnknown) {
   SetupConnectionAndTestType(kFakeUnknownServicePath,
                              kFakeUnknownServiceProxy,
                              "FooConnectionType",
@@ -358,7 +358,7 @@
 }
 
 // Tests that VPN connection is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTypeVpn) {
+TEST_F(UmRealShillProviderTest, ReadConnTypeVpn) {
   // Mock logic for returning a default service path and its type.
   EXPECT_CALL(mock_dbus_, ProxyNewForName(
           kFakeConnection, StrEq(shill::kFlimflamServiceName),
@@ -377,9 +377,9 @@
   Time conn_change_time = SendDefaultServiceSignal(kFakeVpnServicePath);
 
   // Query the connection type, ensure last change time reported correctly.
-  PmTestUtils::ExpectVariableHasValue(ConnectionType::kWifi,
+  UmTestUtils::ExpectVariableHasValue(ConnectionType::kWifi,
                                       provider_->var_conn_type());
-  PmTestUtils::ExpectVariableHasValue(conn_change_time,
+  UmTestUtils::ExpectVariableHasValue(conn_change_time,
                                       provider_->var_conn_last_changed());
 
   // Release properties hash tables.
@@ -388,19 +388,19 @@
 
 // Ensure that the connection type is properly cached in the provider through
 // subsequent variable readings.
-TEST_F(PmRealShillProviderTest, ConnTypeCacheUsed) {
+TEST_F(UmRealShillProviderTest, ConnTypeCacheUsed) {
   SetupConnectionAndTestType(kFakeEthernetServicePath,
                              kFakeEthernetServiceProxy,
                              shill::kTypeEthernet,
                              ConnectionType::kEthernet);
 
-  PmTestUtils::ExpectVariableHasValue(ConnectionType::kEthernet,
+  UmTestUtils::ExpectVariableHasValue(ConnectionType::kEthernet,
                                       provider_->var_conn_type());
 }
 
 // Ensure that the cached connection type remains valid even when a default
 // connection signal occurs but the connection is not changed.
-TEST_F(PmRealShillProviderTest, ConnTypeCacheRemainsValid) {
+TEST_F(UmRealShillProviderTest, ConnTypeCacheRemainsValid) {
   SetupConnectionAndTestType(kFakeEthernetServicePath,
                              kFakeEthernetServiceProxy,
                              shill::kTypeEthernet,
@@ -408,13 +408,13 @@
 
   SendDefaultServiceSignal(kFakeEthernetServicePath);
 
-  PmTestUtils::ExpectVariableHasValue(ConnectionType::kEthernet,
+  UmTestUtils::ExpectVariableHasValue(ConnectionType::kEthernet,
                                       provider_->var_conn_type());
 }
 
 // Ensure that the cached connection type is invalidated and re-read when the
 // default connection changes.
-TEST_F(PmRealShillProviderTest, ConnTypeCacheInvalidated) {
+TEST_F(UmRealShillProviderTest, ConnTypeCacheInvalidated) {
   SetupConnectionAndTestType(kFakeEthernetServicePath,
                              kFakeEthernetServiceProxy,
                              shill::kTypeEthernet,
@@ -427,7 +427,7 @@
 }
 
 // Test that a non-tethering mode is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTetheringNotDetected) {
+TEST_F(UmRealShillProviderTest, ReadConnTetheringNotDetected) {
   SetupConnectionAndTestTethering(kFakeWifiServicePath,
                                   kFakeWifiServiceProxy,
                                   shill::kTetheringNotDetectedState,
@@ -435,7 +435,7 @@
 }
 
 // Test that a suspected tethering mode is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTetheringSuspected) {
+TEST_F(UmRealShillProviderTest, ReadConnTetheringSuspected) {
   SetupConnectionAndTestTethering(kFakeWifiServicePath,
                                   kFakeWifiServiceProxy,
                                   shill::kTetheringSuspectedState,
@@ -443,7 +443,7 @@
 }
 
 // Test that a confirmed tethering mode is identified correctly.
-TEST_F(PmRealShillProviderTest, ReadConnTetheringConfirmed) {
+TEST_F(UmRealShillProviderTest, ReadConnTetheringConfirmed) {
   SetupConnectionAndTestTethering(kFakeWifiServicePath,
                                   kFakeWifiServiceProxy,
                                   shill::kTetheringConfirmedState,
@@ -451,7 +451,7 @@
 }
 
 // Test that an unknown tethering mode is identified as such.
-TEST_F(PmRealShillProviderTest, ReadConnTetheringUnknown) {
+TEST_F(UmRealShillProviderTest, ReadConnTetheringUnknown) {
   SetupConnectionAndTestTethering(kFakeWifiServicePath,
                                   kFakeWifiServiceProxy,
                                   "FooConnTethering",
@@ -459,19 +459,19 @@
 }
 
 // Ensure that the connection tethering mode is properly cached in the provider.
-TEST_F(PmRealShillProviderTest, ConnTetheringCacheUsed) {
+TEST_F(UmRealShillProviderTest, ConnTetheringCacheUsed) {
   SetupConnectionAndTestTethering(kFakeEthernetServicePath,
                                   kFakeEthernetServiceProxy,
                                   shill::kTetheringNotDetectedState,
                                   ConnectionTethering::kNotDetected);
 
-  PmTestUtils::ExpectVariableHasValue(ConnectionTethering::kNotDetected,
+  UmTestUtils::ExpectVariableHasValue(ConnectionTethering::kNotDetected,
                                       provider_->var_conn_tethering());
 }
 
 // Ensure that the cached connection tethering mode remains valid even when a
 // default connection signal occurs but the connection is not changed.
-TEST_F(PmRealShillProviderTest, ConnTetheringCacheRemainsValid) {
+TEST_F(UmRealShillProviderTest, ConnTetheringCacheRemainsValid) {
   SetupConnectionAndTestTethering(kFakeEthernetServicePath,
                                   kFakeEthernetServiceProxy,
                                   shill::kTetheringNotDetectedState,
@@ -479,13 +479,13 @@
 
   SendDefaultServiceSignal(kFakeEthernetServicePath);
 
-  PmTestUtils::ExpectVariableHasValue(ConnectionTethering::kNotDetected,
+  UmTestUtils::ExpectVariableHasValue(ConnectionTethering::kNotDetected,
                                       provider_->var_conn_tethering());
 }
 
 // Ensure that the cached connection tethering mode is invalidated and re-read
 // when the default connection changes.
-TEST_F(PmRealShillProviderTest, ConnTetheringCacheInvalidated) {
+TEST_F(UmRealShillProviderTest, ConnTetheringCacheInvalidated) {
   SetupConnectionAndTestTethering(kFakeEthernetServicePath,
                                   kFakeEthernetServiceProxy,
                                   shill::kTetheringNotDetectedState,
@@ -501,7 +501,7 @@
 // give the same service path. Check connection status and the time it was last
 // changed, making sure that it is the time when the first signal was sent (and
 // not the second).
-TEST_F(PmRealShillProviderTest, ReadLastChangedTimeTwoSignals) {
+TEST_F(UmRealShillProviderTest, ReadLastChangedTimeTwoSignals) {
   // Send a default service signal twice, advancing the clock in between.
   Time conn_change_time;
   SetupConnectionAndAttrs(kFakeEthernetServicePath, kFakeEthernetServiceProxy,
@@ -510,25 +510,25 @@
   SendDefaultServiceSignal(kFakeEthernetServicePath);
 
   // Query the connection status, ensure last change time reported correctly.
-  PmTestUtils::ExpectVariableHasValue(true, provider_->var_is_connected());
-  PmTestUtils::ExpectVariableHasValue(conn_change_time,
+  UmTestUtils::ExpectVariableHasValue(true, provider_->var_is_connected());
+  UmTestUtils::ExpectVariableHasValue(conn_change_time,
                                       provider_->var_conn_last_changed());
 }
 
 // Make sure that the provider initializes correctly even if shill is not
 // responding, that variables can be obtained, and that they all return a null
 // value (indicating that the underlying values were not set).
-TEST_F(PmRealShillProviderTest, NoInitConnStatusReadBaseValues) {
+TEST_F(UmRealShillProviderTest, NoInitConnStatusReadBaseValues) {
   // Re-initialize the provider, no initial connection status response.
   Init(false);
-  PmTestUtils::ExpectVariableNotSet(provider_->var_is_connected());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_conn_type());
-  PmTestUtils::ExpectVariableNotSet(provider_->var_conn_last_changed());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_is_connected());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_conn_type());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_conn_last_changed());
 }
 
 // Test that, once a signal is received, the connection status and other info
 // can be read correctly.
-TEST_F(PmRealShillProviderTest, NoInitConnStatusReadConnTypeEthernet) {
+TEST_F(UmRealShillProviderTest, NoInitConnStatusReadConnTypeEthernet) {
   // Re-initialize the provider, no initial connection status response.
   Init(false);
   SetupConnectionAndTestType(kFakeEthernetServicePath,
@@ -537,4 +537,4 @@
                              ConnectionType::kEthernet);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_state.h b/update_manager/real_state.h
similarity index 86%
rename from policy_manager/real_state.h
rename to update_manager/real_state.h
index 7349d58..0f74214 100644
--- a/policy_manager/real_state.h
+++ b/update_manager/real_state.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_STATE_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_STATE_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_STATE_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_STATE_H_
 
 #include <base/memory/scoped_ptr.h>
 
-#include "update_engine/policy_manager/state.h"
+#include "update_engine/update_manager/state.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // State concrete implementation.
 class RealState : public State {
@@ -65,6 +65,6 @@
   scoped_ptr<UpdaterProvider> updater_provider_;
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_STATE_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_STATE_H_
diff --git a/policy_manager/real_system_provider.cc b/update_manager/real_system_provider.cc
similarity index 85%
rename from policy_manager/real_system_provider.cc
rename to update_manager/real_system_provider.cc
index e00c87b..c397027 100644
--- a/policy_manager/real_system_provider.cc
+++ b/update_manager/real_system_provider.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_system_provider.h"
+#include "update_engine/update_manager/real_system_provider.h"
 
 #include <string.h>
 #include <sys/stat.h>
@@ -17,7 +17,7 @@
 #include <base/time/time.h>
 #include <vboot/crossystem.h>
 
-#include "update_engine/policy_manager/generic_variables.h"
+#include "update_engine/update_manager/generic_variables.h"
 #include "update_engine/utils.h"
 
 using base::StringPrintf;
@@ -26,7 +26,7 @@
 using std::string;
 using std::vector;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 bool RealSystemProvider::Init() {
   var_is_normal_boot_mode_.reset(
@@ -46,4 +46,4 @@
   return true;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_system_provider.h b/update_manager/real_system_provider.h
similarity index 78%
rename from policy_manager/real_system_provider.h
rename to update_manager/real_system_provider.h
index 8d95387..b4c401e 100644
--- a/policy_manager/real_system_provider.h
+++ b/update_manager/real_system_provider.h
@@ -2,17 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_SYSTEM_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_SYSTEM_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_SYSTEM_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_SYSTEM_PROVIDER_H_
 
 #include <base/memory/scoped_ptr.h>
 
 #include <string>
 
 #include "update_engine/hardware_interface.h"
-#include "update_engine/policy_manager/system_provider.h"
+#include "update_engine/update_manager/system_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // SystemProvider concrete implementation.
 class RealSystemProvider : public SystemProvider {
@@ -46,6 +46,6 @@
   DISALLOW_COPY_AND_ASSIGN(RealSystemProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_SYSTEM_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_SYSTEM_PROVIDER_H_
diff --git a/update_manager/real_system_provider_unittest.cc b/update_manager/real_system_provider_unittest.cc
new file mode 100644
index 0000000..d744671
--- /dev/null
+++ b/update_manager/real_system_provider_unittest.cc
@@ -0,0 +1,43 @@
+// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "update_engine/update_manager/real_system_provider.h"
+
+#include <base/memory/scoped_ptr.h>
+#include <base/time/time.h>
+#include <gtest/gtest.h>
+
+#include "update_engine/fake_hardware.h"
+#include "update_engine/update_manager/umtest_utils.h"
+
+namespace chromeos_update_manager {
+
+class UmRealSystemProviderTest : public ::testing::Test {
+ protected:
+  virtual void SetUp() {
+    provider_.reset(new RealSystemProvider(&fake_hardware_));
+    EXPECT_TRUE(provider_->Init());
+  }
+
+  chromeos_update_engine::FakeHardware fake_hardware_;
+  scoped_ptr<RealSystemProvider> provider_;
+};
+
+TEST_F(UmRealSystemProviderTest, InitTest) {
+  UMTEST_EXPECT_NOT_NULL(provider_->var_is_normal_boot_mode());
+  UMTEST_EXPECT_NOT_NULL(provider_->var_is_official_build());
+  UMTEST_EXPECT_NOT_NULL(provider_->var_is_oobe_complete());
+}
+
+TEST_F(UmRealSystemProviderTest, IsOOBECompleteTrue) {
+  fake_hardware_.SetIsOOBEComplete(base::Time());
+  UmTestUtils::ExpectVariableHasValue(true, provider_->var_is_oobe_complete());
+}
+
+TEST_F(UmRealSystemProviderTest, IsOOBECompleteFalse) {
+  fake_hardware_.UnsetIsOOBEComplete();
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_is_oobe_complete());
+}
+
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_time_provider.cc b/update_manager/real_time_provider.cc
similarity index 93%
rename from policy_manager/real_time_provider.cc
rename to update_manager/real_time_provider.cc
index 1693c73..9067bdd 100644
--- a/policy_manager/real_time_provider.cc
+++ b/update_manager/real_time_provider.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_time_provider.h"
+#include "update_engine/update_manager/real_time_provider.h"
 
 #include <base/time/time.h>
 
@@ -13,7 +13,7 @@
 using chromeos_update_engine::ClockInterface;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A variable returning the current date.
 class CurrDateVariable : public Variable<Time> {
@@ -66,4 +66,4 @@
   return true;
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_time_provider.h b/update_manager/real_time_provider.h
similarity index 76%
rename from policy_manager/real_time_provider.h
rename to update_manager/real_time_provider.h
index d6d1177..ac60336 100644
--- a/policy_manager/real_time_provider.h
+++ b/update_manager/real_time_provider.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_TIME_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_TIME_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_TIME_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_TIME_PROVIDER_H_
 
 #include <base/memory/scoped_ptr.h>
 #include <base/time/time.h>
 
 #include "update_engine/clock_interface.h"
-#include "update_engine/policy_manager/time_provider.h"
+#include "update_engine/update_manager/time_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // TimeProvider concrete implementation.
 class RealTimeProvider : public TimeProvider {
@@ -40,6 +40,6 @@
   DISALLOW_COPY_AND_ASSIGN(RealTimeProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_TIME_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_TIME_PROVIDER_H_
diff --git a/policy_manager/real_time_provider_unittest.cc b/update_manager/real_time_provider_unittest.cc
similarity index 75%
rename from policy_manager/real_time_provider_unittest.cc
rename to update_manager/real_time_provider_unittest.cc
index e6594aa..6b236db 100644
--- a/policy_manager/real_time_provider_unittest.cc
+++ b/update_manager/real_time_provider_unittest.cc
@@ -8,21 +8,21 @@
 #include <gtest/gtest.h>
 
 #include "update_engine/fake_clock.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
-#include "update_engine/policy_manager/real_time_provider.h"
+#include "update_engine/update_manager/real_time_provider.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::Time;
 using base::TimeDelta;
 using chromeos_update_engine::FakeClock;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmRealTimeProviderTest : public ::testing::Test {
+class UmRealTimeProviderTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     // The provider initializes correctly.
     provider_.reset(new RealTimeProvider(&fake_clock_));
-    PMTEST_ASSERT_NOT_NULL(provider_.get());
+    UMTEST_ASSERT_NOT_NULL(provider_.get());
     ASSERT_TRUE(provider_->Init());
   }
 
@@ -44,7 +44,7 @@
   scoped_ptr<RealTimeProvider> provider_;
 };
 
-TEST_F(PmRealTimeProviderTest, CurrDateValid) {
+TEST_F(UmRealTimeProviderTest, CurrDateValid) {
   const Time now = CurrTime();
   Time::Exploded exploded;
   now.LocalExplode(&exploded);
@@ -55,16 +55,16 @@
   const Time expected = Time::FromLocalExploded(exploded);
 
   fake_clock_.SetWallclockTime(now);
-  PmTestUtils::ExpectVariableHasValue(expected, provider_->var_curr_date());
+  UmTestUtils::ExpectVariableHasValue(expected, provider_->var_curr_date());
 }
 
-TEST_F(PmRealTimeProviderTest, CurrHourValid) {
+TEST_F(UmRealTimeProviderTest, CurrHourValid) {
   const Time now = CurrTime();
   Time::Exploded expected;
   now.LocalExplode(&expected);
   fake_clock_.SetWallclockTime(now);
-  PmTestUtils::ExpectVariableHasValue(expected.hour,
+  UmTestUtils::ExpectVariableHasValue(expected.hour,
                                       provider_->var_curr_hour());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_updater_provider.cc b/update_manager/real_updater_provider.cc
similarity index 98%
rename from policy_manager/real_updater_provider.cc
rename to update_manager/real_updater_provider.cc
index 4455e7f..7863019 100644
--- a/policy_manager/real_updater_provider.cc
+++ b/update_manager/real_updater_provider.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_updater_provider.h"
+#include "update_engine/update_manager/real_updater_provider.h"
 
 #include <inttypes.h>
 
@@ -24,7 +24,7 @@
 using chromeos_update_engine::SystemState;
 using std::string;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A templated base class for all update related variables. Provides uniform
 // construction and a system state handle.
@@ -355,4 +355,4 @@
         new ConsecutiveFailedUpdateChecksVariable(
             "consecutive_failed_update_checks", system_state_)) {}
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/real_updater_provider.h b/update_manager/real_updater_provider.h
similarity index 88%
rename from policy_manager/real_updater_provider.h
rename to update_manager/real_updater_provider.h
index 7ed0b4e..d7e3f06 100644
--- a/policy_manager/real_updater_provider.h
+++ b/update_manager/real_updater_provider.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_UPDATER_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_UPDATER_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_UPDATER_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_UPDATER_PROVIDER_H_
 
 #include <base/memory/scoped_ptr.h>
 
-#include "update_engine/policy_manager/generic_variables.h"
-#include "update_engine/policy_manager/updater_provider.h"
 #include "update_engine/system_state.h"
+#include "update_engine/update_manager/generic_variables.h"
+#include "update_engine/update_manager/updater_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // A concrete UpdaterProvider implementation using local (in-process) bindings.
 class RealUpdaterProvider : public UpdaterProvider {
@@ -97,6 +97,6 @@
   DISALLOW_COPY_AND_ASSIGN(RealUpdaterProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_REAL_UPDATER_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_REAL_UPDATER_PROVIDER_H_
diff --git a/policy_manager/real_updater_provider_unittest.cc b/update_manager/real_updater_provider_unittest.cc
similarity index 69%
rename from policy_manager/real_updater_provider_unittest.cc
rename to update_manager/real_updater_provider_unittest.cc
index 7e2be74..7bea777 100644
--- a/policy_manager/real_updater_provider_unittest.cc
+++ b/update_manager/real_updater_provider_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/real_updater_provider.h"
+#include "update_engine/update_manager/real_updater_provider.h"
 
 #include <string>
 
@@ -14,9 +14,9 @@
 #include "update_engine/fake_clock.h"
 #include "update_engine/fake_system_state.h"
 #include "update_engine/omaha_request_params.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
 #include "update_engine/prefs_mock.h"
 #include "update_engine/update_attempter_mock.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
 using base::Time;
 using base::TimeDelta;
@@ -58,14 +58,14 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmRealUpdaterProviderTest : public ::testing::Test {
+class UmRealUpdaterProviderTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     fake_clock_ = fake_sys_state_.fake_clock();
     provider_.reset(new RealUpdaterProvider(&fake_sys_state_));
-    PMTEST_ASSERT_NOT_NULL(provider_.get());
+    UMTEST_ASSERT_NOT_NULL(provider_.get());
     // Check that provider initializes corrrectly.
     ASSERT_TRUE(provider_->Init());
   }
@@ -111,347 +111,347 @@
   scoped_ptr<RealUpdaterProvider> provider_;
 };
 
-TEST_F(PmRealUpdaterProviderTest, UpdaterStartedTimeIsWallclockTime) {
+TEST_F(UmRealUpdaterProviderTest, UpdaterStartedTimeIsWallclockTime) {
   fake_clock_->SetWallclockTime(Time::FromDoubleT(123.456));
   fake_clock_->SetMonotonicTime(Time::FromDoubleT(456.123));
   // Run SetUp again to re-setup the provider under test to use these values.
   SetUp();
-  PmTestUtils::ExpectVariableHasValue(Time::FromDoubleT(123.456),
+  UmTestUtils::ExpectVariableHasValue(Time::FromDoubleT(123.456),
                                       provider_->var_updater_started_time());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetLastCheckedTimeOkay) {
+TEST_F(UmRealUpdaterProviderTest, GetLastCheckedTimeOkay) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<0>(FixedTime().ToTimeT()), Return(true)));
-  PmTestUtils::ExpectVariableHasValue(RoundedToSecond(FixedTime()),
+  UmTestUtils::ExpectVariableHasValue(RoundedToSecond(FixedTime()),
                                       provider_->var_last_checked_time());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetLastCheckedTimeFailNoValue) {
+TEST_F(UmRealUpdaterProviderTest, GetLastCheckedTimeFailNoValue) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(Return(false));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_last_checked_time());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_last_checked_time());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetProgressOkayMin) {
+TEST_F(UmRealUpdaterProviderTest, GetProgressOkayMin) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<1>(0.0), Return(true)));
-  PmTestUtils::ExpectVariableHasValue(0.0, provider_->var_progress());
+  UmTestUtils::ExpectVariableHasValue(0.0, provider_->var_progress());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetProgressOkayMid) {
+TEST_F(UmRealUpdaterProviderTest, GetProgressOkayMid) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<1>(0.3), Return(true)));
-  PmTestUtils::ExpectVariableHasValue(0.3, provider_->var_progress());
+  UmTestUtils::ExpectVariableHasValue(0.3, provider_->var_progress());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetProgressOkayMax) {
+TEST_F(UmRealUpdaterProviderTest, GetProgressOkayMax) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<1>(1.0), Return(true)));
-  PmTestUtils::ExpectVariableHasValue(1.0, provider_->var_progress());
+  UmTestUtils::ExpectVariableHasValue(1.0, provider_->var_progress());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetProgressFailNoValue) {
+TEST_F(UmRealUpdaterProviderTest, GetProgressFailNoValue) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(Return(false));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_progress());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_progress());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetProgressFailTooSmall) {
+TEST_F(UmRealUpdaterProviderTest, GetProgressFailTooSmall) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<1>(-2.0), Return(true)));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_progress());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_progress());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetProgressFailTooBig) {
+TEST_F(UmRealUpdaterProviderTest, GetProgressFailTooBig) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<1>(2.0), Return(true)));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_progress());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_progress());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayIdle) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayIdle) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<2>(update_engine::kUpdateStatusIdle),
                       Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kIdle, provider_->var_stage());
+  UmTestUtils::ExpectVariableHasValue(Stage::kIdle, provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayCheckingForUpdate) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayCheckingForUpdate) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(
               SetArgPointee<2>(update_engine::kUpdateStatusCheckingForUpdate),
               Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kCheckingForUpdate,
+  UmTestUtils::ExpectVariableHasValue(Stage::kCheckingForUpdate,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayUpdateAvailable) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayUpdateAvailable) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(
               SetArgPointee<2>(update_engine::kUpdateStatusUpdateAvailable),
               Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kUpdateAvailable,
+  UmTestUtils::ExpectVariableHasValue(Stage::kUpdateAvailable,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayDownloading) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayDownloading) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<2>(update_engine::kUpdateStatusDownloading),
                       Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kDownloading,
+  UmTestUtils::ExpectVariableHasValue(Stage::kDownloading,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayVerifying) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayVerifying) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<2>(update_engine::kUpdateStatusVerifying),
                       Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kVerifying,
+  UmTestUtils::ExpectVariableHasValue(Stage::kVerifying,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayFinalizing) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayFinalizing) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<2>(update_engine::kUpdateStatusFinalizing),
                       Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kFinalizing,
+  UmTestUtils::ExpectVariableHasValue(Stage::kFinalizing,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayUpdatedNeedReboot) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayUpdatedNeedReboot) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(
               SetArgPointee<2>(update_engine::kUpdateStatusUpdatedNeedReboot),
               Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kUpdatedNeedReboot,
+  UmTestUtils::ExpectVariableHasValue(Stage::kUpdatedNeedReboot,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayReportingErrorEvent) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayReportingErrorEvent) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(
               SetArgPointee<2>(update_engine::kUpdateStatusReportingErrorEvent),
               Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kReportingErrorEvent,
+  UmTestUtils::ExpectVariableHasValue(Stage::kReportingErrorEvent,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageOkayAttemptingRollback) {
+TEST_F(UmRealUpdaterProviderTest, GetStageOkayAttemptingRollback) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(
               SetArgPointee<2>(update_engine::kUpdateStatusAttemptingRollback),
               Return(true)));
-  PmTestUtils::ExpectVariableHasValue(Stage::kAttemptingRollback,
+  UmTestUtils::ExpectVariableHasValue(Stage::kAttemptingRollback,
                                       provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageFailNoValue) {
+TEST_F(UmRealUpdaterProviderTest, GetStageFailNoValue) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(Return(false));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_stage());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageFailUnknown) {
+TEST_F(UmRealUpdaterProviderTest, GetStageFailUnknown) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<2>("FooUpdateEngineState"),
                       Return(true)));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_stage());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetStageFailEmpty) {
+TEST_F(UmRealUpdaterProviderTest, GetStageFailEmpty) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<2>(""), Return(true)));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_stage());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_stage());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetNewVersionOkay) {
+TEST_F(UmRealUpdaterProviderTest, GetNewVersionOkay) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<3>("1.2.0"), Return(true)));
-  PmTestUtils::ExpectVariableHasValue(string("1.2.0"),
+  UmTestUtils::ExpectVariableHasValue(string("1.2.0"),
                                       provider_->var_new_version());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetNewVersionFailNoValue) {
+TEST_F(UmRealUpdaterProviderTest, GetNewVersionFailNoValue) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(Return(false));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_new_version());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_new_version());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetPayloadSizeOkayZero) {
+TEST_F(UmRealUpdaterProviderTest, GetPayloadSizeOkayZero) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<4>(static_cast<int64_t>(0)), Return(true)));
-  PmTestUtils::ExpectVariableHasValue(static_cast<int64_t>(0),
+  UmTestUtils::ExpectVariableHasValue(static_cast<int64_t>(0),
                                       provider_->var_payload_size());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetPayloadSizeOkayArbitrary) {
+TEST_F(UmRealUpdaterProviderTest, GetPayloadSizeOkayArbitrary) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<4>(static_cast<int64_t>(567890)),
                       Return(true)));
-  PmTestUtils::ExpectVariableHasValue(static_cast<int64_t>(567890),
+  UmTestUtils::ExpectVariableHasValue(static_cast<int64_t>(567890),
                                       provider_->var_payload_size());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetPayloadSizeOkayTwoGigabytes) {
+TEST_F(UmRealUpdaterProviderTest, GetPayloadSizeOkayTwoGigabytes) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<4>(static_cast<int64_t>(1) << 31),
                       Return(true)));
-  PmTestUtils::ExpectVariableHasValue(static_cast<int64_t>(1) << 31,
+  UmTestUtils::ExpectVariableHasValue(static_cast<int64_t>(1) << 31,
                                       provider_->var_payload_size());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetPayloadSizeFailNoValue) {
+TEST_F(UmRealUpdaterProviderTest, GetPayloadSizeFailNoValue) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(Return(false));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_payload_size());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_payload_size());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetPayloadSizeFailNegative) {
+TEST_F(UmRealUpdaterProviderTest, GetPayloadSizeFailNegative) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               GetStatus(_, _, _, _, _))
       .WillOnce(DoAll(SetArgPointee<4>(static_cast<int64_t>(-1024)),
                       Return(true)));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_payload_size());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_payload_size());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetCurrChannelOkay) {
+TEST_F(UmRealUpdaterProviderTest, GetCurrChannelOkay) {
   const string kChannelName("foo-channel");
   OmahaRequestParams request_params(&fake_sys_state_);
   request_params.Init("", "", false);
   request_params.set_current_channel(kChannelName);
   fake_sys_state_.set_request_params(&request_params);
-  PmTestUtils::ExpectVariableHasValue(kChannelName,
+  UmTestUtils::ExpectVariableHasValue(kChannelName,
                                       provider_->var_curr_channel());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetCurrChannelFailEmpty) {
+TEST_F(UmRealUpdaterProviderTest, GetCurrChannelFailEmpty) {
   OmahaRequestParams request_params(&fake_sys_state_);
   request_params.Init("", "", false);
   request_params.set_current_channel("");
   fake_sys_state_.set_request_params(&request_params);
-  PmTestUtils::ExpectVariableNotSet(provider_->var_curr_channel());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_curr_channel());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetNewChannelOkay) {
+TEST_F(UmRealUpdaterProviderTest, GetNewChannelOkay) {
   const string kChannelName("foo-channel");
   OmahaRequestParams request_params(&fake_sys_state_);
   request_params.Init("", "", false);
   request_params.set_target_channel(kChannelName);
   fake_sys_state_.set_request_params(&request_params);
-  PmTestUtils::ExpectVariableHasValue(kChannelName,
+  UmTestUtils::ExpectVariableHasValue(kChannelName,
                                       provider_->var_new_channel());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetNewChannelFailEmpty) {
+TEST_F(UmRealUpdaterProviderTest, GetNewChannelFailEmpty) {
   OmahaRequestParams request_params(&fake_sys_state_);
   request_params.Init("", "", false);
   request_params.set_target_channel("");
   fake_sys_state_.set_request_params(&request_params);
-  PmTestUtils::ExpectVariableNotSet(provider_->var_new_channel());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_new_channel());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetP2PEnabledOkayPrefDoesntExist) {
+TEST_F(UmRealUpdaterProviderTest, GetP2PEnabledOkayPrefDoesntExist) {
   SetupReadBooleanPref(chromeos_update_engine::kPrefsP2PEnabled,
                        false, false, false);
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_p2p_enabled());
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_p2p_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetP2PEnabledOkayPrefReadsFalse) {
+TEST_F(UmRealUpdaterProviderTest, GetP2PEnabledOkayPrefReadsFalse) {
   SetupReadBooleanPref(chromeos_update_engine::kPrefsP2PEnabled,
                        true, true, false);
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_p2p_enabled());
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_p2p_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetP2PEnabledOkayPrefReadsTrue) {
+TEST_F(UmRealUpdaterProviderTest, GetP2PEnabledOkayPrefReadsTrue) {
   SetupReadBooleanPref(chromeos_update_engine::kPrefsP2PEnabled,
                        true, true, true);
-  PmTestUtils::ExpectVariableHasValue(true, provider_->var_p2p_enabled());
+  UmTestUtils::ExpectVariableHasValue(true, provider_->var_p2p_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetP2PEnabledFailCannotReadPref) {
+TEST_F(UmRealUpdaterProviderTest, GetP2PEnabledFailCannotReadPref) {
   SetupReadBooleanPref(chromeos_update_engine::kPrefsP2PEnabled,
                        true, false, false);
-  PmTestUtils::ExpectVariableNotSet(provider_->var_p2p_enabled());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_p2p_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetCellularEnabledOkayPrefDoesntExist) {
+TEST_F(UmRealUpdaterProviderTest, GetCellularEnabledOkayPrefDoesntExist) {
   SetupReadBooleanPref(
       chromeos_update_engine::kPrefsUpdateOverCellularPermission,
       false, false, false);
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_cellular_enabled());
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_cellular_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetCellularEnabledOkayPrefReadsFalse) {
+TEST_F(UmRealUpdaterProviderTest, GetCellularEnabledOkayPrefReadsFalse) {
   SetupReadBooleanPref(
       chromeos_update_engine::kPrefsUpdateOverCellularPermission,
       true, true, false);
-  PmTestUtils::ExpectVariableHasValue(false, provider_->var_cellular_enabled());
+  UmTestUtils::ExpectVariableHasValue(false, provider_->var_cellular_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetCellularEnabledOkayPrefReadsTrue) {
+TEST_F(UmRealUpdaterProviderTest, GetCellularEnabledOkayPrefReadsTrue) {
   SetupReadBooleanPref(
       chromeos_update_engine::kPrefsUpdateOverCellularPermission,
       true, true, true);
-  PmTestUtils::ExpectVariableHasValue(true, provider_->var_cellular_enabled());
+  UmTestUtils::ExpectVariableHasValue(true, provider_->var_cellular_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetCellularEnabledFailCannotReadPref) {
+TEST_F(UmRealUpdaterProviderTest, GetCellularEnabledFailCannotReadPref) {
   SetupReadBooleanPref(
       chromeos_update_engine::kPrefsUpdateOverCellularPermission,
       true, false, false);
-  PmTestUtils::ExpectVariableNotSet(provider_->var_cellular_enabled());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_cellular_enabled());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetUpdateCompletedTimeOkay) {
+TEST_F(UmRealUpdaterProviderTest, GetUpdateCompletedTimeOkay) {
   Time expected = SetupUpdateCompletedTime(true);
-  PmTestUtils::ExpectVariableHasValue(expected,
+  UmTestUtils::ExpectVariableHasValue(expected,
                                       provider_->var_update_completed_time());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetUpdateCompletedTimeFailNoValue) {
+TEST_F(UmRealUpdaterProviderTest, GetUpdateCompletedTimeFailNoValue) {
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(), GetBootTimeAtUpdate(_))
       .WillOnce(Return(false));
-  PmTestUtils::ExpectVariableNotSet(provider_->var_update_completed_time());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_update_completed_time());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetUpdateCompletedTimeFailInvalidValue) {
+TEST_F(UmRealUpdaterProviderTest, GetUpdateCompletedTimeFailInvalidValue) {
   SetupUpdateCompletedTime(false);
-  PmTestUtils::ExpectVariableNotSet(provider_->var_update_completed_time());
+  UmTestUtils::ExpectVariableNotSet(provider_->var_update_completed_time());
 }
 
-TEST_F(PmRealUpdaterProviderTest, GetConsecutiveFailedUpdateChecks) {
+TEST_F(UmRealUpdaterProviderTest, GetConsecutiveFailedUpdateChecks) {
   const unsigned int kNumFailedChecks = 3;
   EXPECT_CALL(*fake_sys_state_.mock_update_attempter(),
               consecutive_failed_update_checks())
       .WillRepeatedly(Return(kNumFailedChecks));
-  PmTestUtils::ExpectVariableHasValue(
+  UmTestUtils::ExpectVariableHasValue(
       kNumFailedChecks, provider_->var_consecutive_failed_update_checks());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/shill_provider.h b/update_manager/shill_provider.h
similarity index 77%
rename from policy_manager/shill_provider.h
rename to update_manager/shill_provider.h
index cd9743b..51180fa 100644
--- a/policy_manager/shill_provider.h
+++ b/update_manager/shill_provider.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_SHILL_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_SHILL_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_SHILL_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_SHILL_PROVIDER_H_
 
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/provider.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 enum class ConnectionType {
   kEthernet,
@@ -55,6 +55,6 @@
   DISALLOW_COPY_AND_ASSIGN(ShillProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_SHILL_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_SHILL_PROVIDER_H_
diff --git a/update_manager/state.h b/update_manager/state.h
new file mode 100644
index 0000000..0fe4116
--- /dev/null
+++ b/update_manager/state.h
@@ -0,0 +1,42 @@
+// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_STATE_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_STATE_H_
+
+#include "update_engine/update_manager/config_provider.h"
+#include "update_engine/update_manager/device_policy_provider.h"
+#include "update_engine/update_manager/random_provider.h"
+#include "update_engine/update_manager/shill_provider.h"
+#include "update_engine/update_manager/system_provider.h"
+#include "update_engine/update_manager/time_provider.h"
+#include "update_engine/update_manager/updater_provider.h"
+
+namespace chromeos_update_manager {
+
+// The State class is an interface to the ensemble of providers. This class
+// gives visibility of the state providers to policy implementations.
+class State {
+ public:
+  virtual ~State() {}
+
+  // These methods return the given provider.
+  virtual ConfigProvider* config_provider() = 0;
+  virtual DevicePolicyProvider* device_policy_provider() = 0;
+  virtual RandomProvider* random_provider() = 0;
+  virtual ShillProvider* shill_provider() = 0;
+  virtual SystemProvider* system_provider() = 0;
+  virtual TimeProvider* time_provider() = 0;
+  virtual UpdaterProvider* updater_provider() = 0;
+
+ protected:
+  State() {}
+
+ private:
+  DISALLOW_COPY_AND_ASSIGN(State);
+};
+
+}  // namespace chromeos_update_manager
+
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_STATE_H_
diff --git a/policy_manager/state_factory.cc b/update_manager/state_factory.cc
similarity index 75%
rename from policy_manager/state_factory.cc
rename to update_manager/state_factory.cc
index 88a8ee0..6aa1761 100644
--- a/policy_manager/state_factory.cc
+++ b/update_manager/state_factory.cc
@@ -2,22 +2,22 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/state_factory.h"
+#include "update_engine/update_manager/state_factory.h"
 
 #include <base/logging.h>
 #include <base/memory/scoped_ptr.h>
 
 #include "update_engine/clock_interface.h"
-#include "update_engine/policy_manager/real_config_provider.h"
-#include "update_engine/policy_manager/real_device_policy_provider.h"
-#include "update_engine/policy_manager/real_random_provider.h"
-#include "update_engine/policy_manager/real_shill_provider.h"
-#include "update_engine/policy_manager/real_state.h"
-#include "update_engine/policy_manager/real_system_provider.h"
-#include "update_engine/policy_manager/real_time_provider.h"
-#include "update_engine/policy_manager/real_updater_provider.h"
+#include "update_engine/update_manager/real_config_provider.h"
+#include "update_engine/update_manager/real_device_policy_provider.h"
+#include "update_engine/update_manager/real_random_provider.h"
+#include "update_engine/update_manager/real_shill_provider.h"
+#include "update_engine/update_manager/real_state.h"
+#include "update_engine/update_manager/real_system_provider.h"
+#include "update_engine/update_manager/real_time_provider.h"
+#include "update_engine/update_manager/real_updater_provider.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 State* DefaultStateFactory(policy::PolicyProvider* policy_provider,
                            chromeos_update_engine::DBusWrapperInterface* dbus,
@@ -56,4 +56,4 @@
                        updater_provider.release());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/state_factory.h b/update_manager/state_factory.h
similarity index 66%
rename from policy_manager/state_factory.h
rename to update_manager/state_factory.h
index bc60ba1..8e97554 100644
--- a/policy_manager/state_factory.h
+++ b/update_manager/state_factory.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_FACTORY_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_FACTORY_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_STATE_FACTORY_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_STATE_FACTORY_H_
 
 #include "update_engine/dbus_wrapper_interface.h"
-#include "update_engine/policy_manager/state.h"
 #include "update_engine/system_state.h"
+#include "update_engine/update_manager/state.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-// Creates and initializes a new PolicyManager State instance containing real
+// Creates and initializes a new UpdateManager State instance containing real
 // providers instantiated using the passed interfaces. The State doesn't take
 // ownership of the passed interfaces, which need to remain available during the
 // life of this instance.  Returns null if one of the underlying providers fails
@@ -21,6 +21,6 @@
     chromeos_update_engine::DBusWrapperInterface* dbus,
     chromeos_update_engine::SystemState* system_state);
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_STATE_FACTORY_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_STATE_FACTORY_H_
diff --git a/policy_manager/system_provider.h b/update_manager/system_provider.h
similarity index 72%
rename from policy_manager/system_provider.h
rename to update_manager/system_provider.h
index dae3a9a..831f377 100644
--- a/policy_manager/system_provider.h
+++ b/update_manager/system_provider.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_SYSTEM_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_SYSTEM_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_SYSTEM_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_SYSTEM_PROVIDER_H_
 
-#include "update_engine/policy_manager/provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/provider.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Provider for system information, mostly constant, such as the information
 // reported by crossystem, the kernel boot command line and the partition table.
@@ -34,6 +34,6 @@
   DISALLOW_COPY_AND_ASSIGN(SystemProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_SYSTEM_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_SYSTEM_PROVIDER_H_
diff --git a/policy_manager/time_provider.h b/update_manager/time_provider.h
similarity index 66%
rename from policy_manager/time_provider.h
rename to update_manager/time_provider.h
index 5baa140..146d250 100644
--- a/policy_manager/time_provider.h
+++ b/update_manager/time_provider.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_TIME_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_TIME_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_TIME_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_TIME_PROVIDER_H_
 
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/provider.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Provider for time related information.
 class TimeProvider : public Provider {
@@ -31,6 +31,6 @@
   DISALLOW_COPY_AND_ASSIGN(TimeProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_TIME_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_TIME_PROVIDER_H_
diff --git a/policy_manager/pmtest_utils.cc b/update_manager/umtest_utils.cc
similarity index 61%
rename from policy_manager/pmtest_utils.cc
rename to update_manager/umtest_utils.cc
index 1c53099..41dc0a6 100644
--- a/policy_manager/pmtest_utils.cc
+++ b/update_manager/umtest_utils.cc
@@ -4,14 +4,14 @@
 
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/pmtest_utils.h"
+#include "update_engine/update_manager/umtest_utils.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-const unsigned PmTestUtils::kDefaultTimeoutInSeconds = 1;
+const unsigned UmTestUtils::kDefaultTimeoutInSeconds = 1;
 
 void PrintTo(const EvalStatus& status, ::std::ostream* os) {
   *os << ToString(status);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/pmtest_utils.h b/update_manager/umtest_utils.h
similarity index 68%
rename from policy_manager/pmtest_utils.h
rename to update_manager/umtest_utils.h
index 79a7733..bd8da8c 100644
--- a/policy_manager/pmtest_utils.h
+++ b/update_manager/umtest_utils.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PMTEST_UTILS_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PMTEST_UTILS_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UMTEST_UTILS_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UMTEST_UTILS_H_
 
 #include <iostream>
 
@@ -11,8 +11,8 @@
 #include <base/time/time.h>
 #include <gtest/gtest.h>
 
-#include "update_engine/policy_manager/policy.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/policy.h"
+#include "update_engine/update_manager/variable.h"
 
 // Convenience macros for checking null-ness of pointers.
 //
@@ -24,16 +24,16 @@
 //
 // Note that checking nullness of the content of a scoped_ptr requires getting
 // the inner pointer value via get().
-#define PMTEST_ASSERT_NULL(p) ASSERT_EQ(NULL, p)
-#define PMTEST_ASSERT_NOT_NULL(p) ASSERT_NE(reinterpret_cast<void*>(NULL), p)
-#define PMTEST_EXPECT_NULL(p) EXPECT_EQ(NULL, p)
-#define PMTEST_EXPECT_NOT_NULL(p) EXPECT_NE(reinterpret_cast<void*>(NULL), p)
+#define UMTEST_ASSERT_NULL(p) ASSERT_EQ(NULL, p)
+#define UMTEST_ASSERT_NOT_NULL(p) ASSERT_NE(reinterpret_cast<void*>(NULL), p)
+#define UMTEST_EXPECT_NULL(p) EXPECT_EQ(NULL, p)
+#define UMTEST_EXPECT_NOT_NULL(p) EXPECT_NE(reinterpret_cast<void*>(NULL), p)
 
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-// A help class with common functionality for use in Policy Manager testing.
-class PmTestUtils {
+// A help class with common functionality for use in Update Manager testing.
+class UmTestUtils {
  public:
   // A default timeout to use when making various queries.
   static const base::TimeDelta DefaultTimeout() {
@@ -43,18 +43,18 @@
   // Calls GetValue on |variable| and expects its result to be |expected|.
   template<typename T>
   static void ExpectVariableHasValue(const T& expected, Variable<T>* variable) {
-    PMTEST_ASSERT_NOT_NULL(variable);
+    UMTEST_ASSERT_NOT_NULL(variable);
     scoped_ptr<const T> value(variable->GetValue(DefaultTimeout(), nullptr));
-    PMTEST_ASSERT_NOT_NULL(value.get()) << "Variable: " << variable->GetName();
+    UMTEST_ASSERT_NOT_NULL(value.get()) << "Variable: " << variable->GetName();
     EXPECT_EQ(expected, *value) << "Variable: " << variable->GetName();
   }
 
   // Calls GetValue on |variable| and expects its result to be null.
   template<typename T>
   static void ExpectVariableNotSet(Variable<T>* variable) {
-    PMTEST_ASSERT_NOT_NULL(variable);
+    UMTEST_ASSERT_NOT_NULL(variable);
     scoped_ptr<const T> value(variable->GetValue(DefaultTimeout(), nullptr));
-    PMTEST_EXPECT_NULL(value.get()) << "Variable: " << variable->GetName();
+    UMTEST_EXPECT_NULL(value.get()) << "Variable: " << variable->GetName();
   }
 
  private:
@@ -65,6 +65,6 @@
 // defined on the same namespace where the type was defined.
 void PrintTo(const EvalStatus& status, ::std::ostream* os);
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_PMTEST_UTILS_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UMTEST_UTILS_H_
diff --git a/policy_manager/policy_manager-inl.h b/update_manager/update_manager-inl.h
similarity index 83%
rename from policy_manager/policy_manager-inl.h
rename to update_manager/update_manager-inl.h
index 81cc808..1b1dc49 100644
--- a/policy_manager/policy_manager-inl.h
+++ b/update_manager/update_manager-inl.h
@@ -2,20 +2,20 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_MANAGER_INL_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_MANAGER_INL_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATE_MANAGER_INL_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATE_MANAGER_INL_H_
 
 #include <string>
 
 #include <base/bind.h>
 
-#include "update_engine/policy_manager/evaluation_context.h"
-#include "update_engine/policy_manager/event_loop.h"
+#include "update_engine/update_manager/evaluation_context.h"
+#include "update_engine/update_manager/event_loop.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 template<typename R, typename... Args>
-EvalStatus PolicyManager::EvaluatePolicy(
+EvalStatus UpdateManager::EvaluatePolicy(
     EvaluationContext* ec,
     EvalStatus (Policy::*policy_method)(EvaluationContext*, State*,
                                         std::string*, R*,
@@ -42,7 +42,7 @@
 }
 
 template<typename R, typename... Args>
-void PolicyManager::OnPolicyReadyToEvaluate(
+void UpdateManager::OnPolicyReadyToEvaluate(
     scoped_refptr<EvaluationContext> ec,
     base::Callback<void(EvalStatus status, const R& result)> callback,
     EvalStatus (Policy::*policy_method)(EvaluationContext*, State*,
@@ -60,7 +60,7 @@
   }
   // Re-schedule the policy request based on used variables.
   base::Closure closure = base::Bind(
-      &PolicyManager::OnPolicyReadyToEvaluate<R, Args...>,
+      &UpdateManager::OnPolicyReadyToEvaluate<R, Args...>,
       base::Unretained(this), ec, callback, policy_method, args...);
 
   if (!ec->RunOnValueChangeOrTimeout(closure)) {
@@ -75,7 +75,7 @@
 }
 
 template<typename R, typename... ActualArgs, typename... ExpectedArgs>
-EvalStatus PolicyManager::PolicyRequest(
+EvalStatus UpdateManager::PolicyRequest(
     EvalStatus (Policy::*policy_method)(EvaluationContext*, State*,
                                         std::string*, R*,
                                         ExpectedArgs...) const,
@@ -90,7 +90,7 @@
 }
 
 template<typename R, typename... ActualArgs, typename... ExpectedArgs>
-void PolicyManager::AsyncPolicyRequest(
+void UpdateManager::AsyncPolicyRequest(
     base::Callback<void(EvalStatus, const R& result)> callback,
     EvalStatus (Policy::*policy_method)(EvaluationContext*, State*,
                                         std::string*, R*,
@@ -98,14 +98,14 @@
     ActualArgs... args) {
   scoped_refptr<EvaluationContext> ec = new EvaluationContext(clock_);
   // IMPORTANT: To ensure that ActualArgs can be converted to ExpectedArgs, we
-  // explicitly instantiate PolicyManager::OnPolicyReadyToEvaluate with the
+  // explicitly instantiate UpdateManager::OnPolicyReadyToEvaluate with the
   // latter in lieu of the former.
   base::Closure closure = base::Bind(
-      &PolicyManager::OnPolicyReadyToEvaluate<R, ExpectedArgs...>,
+      &UpdateManager::OnPolicyReadyToEvaluate<R, ExpectedArgs...>,
       base::Unretained(this), ec, callback, policy_method, args...);
   RunFromMainLoop(closure);
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_MANAGER_INL_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATE_MANAGER_INL_H_
diff --git a/update_manager/update_manager.cc b/update_manager/update_manager.cc
new file mode 100644
index 0000000..d3281fd
--- /dev/null
+++ b/update_manager/update_manager.cc
@@ -0,0 +1,20 @@
+// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "update_engine/update_manager/update_manager.h"
+
+#include "update_engine/update_manager/chromeos_policy.h"
+#include "update_engine/update_manager/state.h"
+
+namespace chromeos_update_manager {
+
+UpdateManager::UpdateManager(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());
+}
+
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/policy_manager.conf.example b/update_manager/update_manager.conf.example
similarity index 69%
rename from policy_manager/policy_manager.conf.example
rename to update_manager/update_manager.conf.example
index 9215971..2d77974 100644
--- a/policy_manager/policy_manager.conf.example
+++ b/update_manager/update_manager.conf.example
@@ -1,13 +1,13 @@
-# Configuration file for the policy-manager component of update_engine.
+# Configuration file for the update-manager component of update_engine.
 #
-# Normally this file is loaded from /etc/policy_manager.conf. If
+# Normally this file is loaded from /etc/update_manager.conf. If
 # running update_engine in developer mode (and only if running in
 # developer mode), we attempt to load
 #
-#  /mnt/stateful_partition/etc/policy_manager.conf
+#  /mnt/stateful_partition/etc/update_manager.conf
 #
 # and use it if it exists. If it doesn't exist, we fall back to
-# /etc/policy_manager.conf.
+# /etc/update_manager.conf.
 #
 # Note: changes to this file are not automatically applied. Use the
 # command "restart update-engine" from a root shell to make your
diff --git a/policy_manager/policy_manager.h b/update_manager/update_manager.h
similarity index 76%
rename from policy_manager/policy_manager.h
rename to update_manager/update_manager.h
index 586854f..b3dfc7f 100644
--- a/policy_manager/policy_manager.h
+++ b/update_manager/update_manager.h
@@ -2,33 +2,33 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_MANAGER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_MANAGER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATE_MANAGER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATE_MANAGER_H_
 
 #include <base/callback.h>
 #include <base/memory/ref_counted.h>
 #include <base/memory/scoped_ptr.h>
 
 #include "update_engine/clock_interface.h"
-#include "update_engine/policy_manager/default_policy.h"
-#include "update_engine/policy_manager/policy.h"
-#include "update_engine/policy_manager/state.h"
+#include "update_engine/update_manager/default_policy.h"
+#include "update_engine/update_manager/policy.h"
+#include "update_engine/update_manager/state.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-// The main Policy Manager singleton class.
-class PolicyManager {
+// The main Update Manager singleton class.
+class UpdateManager {
  public:
-  // Creates the PolicyManager instance, assuming ownership on the provided
+  // Creates the UpdateManager instance, assuming ownership on the provided
   // |state|.
-  PolicyManager(chromeos_update_engine::ClockInterface* clock,
+  UpdateManager(chromeos_update_engine::ClockInterface* clock,
                 State* state);
 
-  virtual ~PolicyManager() {}
+  virtual ~UpdateManager() {}
 
   // PolicyRequest() evaluates the given policy with the provided arguments and
   // returns the result. The |policy_method| is the pointer-to-method of the
-  // Policy class for the policy request to call. The PolicyManager will call
+  // Policy class for the policy request to call. The UpdateManager will call
   // this method on the right policy. The pointer |result| must not be NULL and
   // the remaining |args| depend on the arguments required by the passed
   // |policy_method|.
@@ -41,7 +41,7 @@
   // not be NULL.
   //
   // An example call to this method is:
-  //   pm.PolicyRequest(&Policy::SomePolicyMethod, &bool_result, arg1, arg2);
+  //   um.PolicyRequest(&Policy::SomePolicyMethod, &bool_result, arg1, arg2);
   template<typename R, typename... ActualArgs, typename... ExpectedArgs>
   EvalStatus PolicyRequest(
       EvalStatus (Policy::*policy_method)(EvaluationContext*, State*,
@@ -53,7 +53,7 @@
   // arguments and calls the |callback| callback with the result when done.
   //
   // If the policy implementation should block, returning a
-  // EvalStatus::kAskMeAgainLater status the policy manager will re-evaluate the
+  // EvalStatus::kAskMeAgainLater status the Update Manager will re-evaluate the
   // policy until another status is returned. If the policy implementation based
   // its return value solely on const variables, the callback will be called
   // with the EvalStatus::kAskMeAgainLater status.
@@ -66,7 +66,7 @@
       ActualArgs... args);
 
  protected:
-  // The PolicyManager receives ownership of the passed Policy instance.
+  // The UpdateManager receives ownership of the passed Policy instance.
   void set_policy(const Policy* policy) {
     policy_.reset(policy);
   }
@@ -75,10 +75,10 @@
   State* state() { return state_.get(); }
 
  private:
-  FRIEND_TEST(PmPolicyManagerTest, PolicyRequestCallsPolicy);
-  FRIEND_TEST(PmPolicyManagerTest, PolicyRequestCallsDefaultOnError);
-  FRIEND_TEST(PmPolicyManagerTest, PolicyRequestDoesntBlock);
-  FRIEND_TEST(PmPolicyManagerTest, AsyncPolicyRequestDelaysEvaluation);
+  FRIEND_TEST(UmUpdateManagerTest, PolicyRequestCallsPolicy);
+  FRIEND_TEST(UmUpdateManagerTest, PolicyRequestCallsDefaultOnError);
+  FRIEND_TEST(UmUpdateManagerTest, PolicyRequestDoesntBlock);
+  FRIEND_TEST(UmUpdateManagerTest, AsyncPolicyRequestDelaysEvaluation);
 
   // EvaluatePolicy() evaluates the passed |policy_method| method on the current
   // policy with the given |args| arguments. If the method fails, the default
@@ -106,7 +106,7 @@
                                           Args...) const,
       Args... args);
 
-  // The policy used by the PolicyManager. Note that since it is a const Policy,
+  // The policy used by the UpdateManager. Note that since it is a const Policy,
   // policy implementations are not allowed to persist state on this class.
   scoped_ptr<const Policy> policy_;
 
@@ -120,12 +120,12 @@
   // Pointer to the mockable clock interface;
   chromeos_update_engine::ClockInterface* clock_;
 
-  DISALLOW_COPY_AND_ASSIGN(PolicyManager);
+  DISALLOW_COPY_AND_ASSIGN(UpdateManager);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
 // Include the implementation of the template methods.
-#include "update_engine/policy_manager/policy_manager-inl.h"
+#include "update_engine/update_manager/update_manager-inl.h"
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_POLICY_MANAGER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATE_MANAGER_H_
diff --git a/policy_manager/policy_manager_unittest.cc b/update_manager/update_manager_unittest.cc
similarity index 75%
rename from policy_manager/policy_manager_unittest.cc
rename to update_manager/update_manager_unittest.cc
index 89da2a4..39427b3 100644
--- a/policy_manager/policy_manager_unittest.cc
+++ b/update_manager/update_manager_unittest.cc
@@ -14,12 +14,12 @@
 #include <gtest/gtest.h>
 
 #include "update_engine/fake_clock.h"
-#include "update_engine/policy_manager/default_policy.h"
-#include "update_engine/policy_manager/fake_state.h"
-#include "update_engine/policy_manager/mock_policy.h"
-#include "update_engine/policy_manager/pmtest_utils.h"
-#include "update_engine/policy_manager/policy_manager.h"
 #include "update_engine/test_utils.h"
+#include "update_engine/update_manager/default_policy.h"
+#include "update_engine/update_manager/fake_state.h"
+#include "update_engine/update_manager/mock_policy.h"
+#include "update_engine/update_manager/umtest_utils.h"
+#include "update_engine/update_manager/update_manager.h"
 
 using base::Bind;
 using base::Callback;
@@ -51,18 +51,18 @@
 
 }  // namespace
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
-class PmPolicyManagerTest : public ::testing::Test {
+class UmUpdateManagerTest : public ::testing::Test {
  protected:
   virtual void SetUp() {
     fake_state_ = new FakeState();
-    pmut_.reset(new PolicyManager(&fake_clock_, fake_state_));
+    umut_.reset(new UpdateManager(&fake_clock_, fake_state_));
   }
 
-  FakeState* fake_state_;  // Owned by the pmut_.
+  FakeState* fake_state_;  // Owned by the umut_.
   FakeClock fake_clock_;
-  scoped_ptr<PolicyManager> pmut_;
+  scoped_ptr<UpdateManager> umut_;
 };
 
 // The FailingPolicy implements a single method and make it always fail. This
@@ -89,7 +89,7 @@
 // AccumulateCallsCallback() adds to the passed |acc| accumulator vector pairs
 // of EvalStatus and T instances. This allows to create a callback that keeps
 // track of when it is called and the arguments passed to it, to be used with
-// the PolicyManager::AsyncPolicyRequest().
+// the UpdateManager::AsyncPolicyRequest().
 template<typename T>
 static void AccumulateCallsCallback(vector<pair<EvalStatus, T>>* acc,
                                     EvalStatus status, const T& result) {
@@ -98,61 +98,61 @@
 
 // Tests that policy requests are completed successfully. It is important that
 // this tests cover all policy requests as defined in Policy.
-TEST_F(PmPolicyManagerTest, PolicyRequestCallUpdateCheckAllowed) {
+TEST_F(UmUpdateManagerTest, PolicyRequestCallUpdateCheckAllowed) {
   UpdateCheckParams result;
-  EXPECT_EQ(EvalStatus::kSucceeded, pmut_->PolicyRequest(
+  EXPECT_EQ(EvalStatus::kSucceeded, umut_->PolicyRequest(
       &Policy::UpdateCheckAllowed, &result));
 }
 
-TEST_F(PmPolicyManagerTest, PolicyRequestCallUpdateCanStart) {
+TEST_F(UmUpdateManagerTest, PolicyRequestCallUpdateCanStart) {
   const UpdateState update_state = {
     FixedTime(), 1, TimeDelta::FromSeconds(15), TimeDelta::FromSeconds(60),
     4, 2, 8
   };
   UpdateCanStartResult result;
   EXPECT_EQ(EvalStatus::kSucceeded,
-            pmut_->PolicyRequest(&Policy::UpdateCanStart, &result, true,
+            umut_->PolicyRequest(&Policy::UpdateCanStart, &result, true,
                                  update_state));
 }
 
-TEST_F(PmPolicyManagerTest, PolicyRequestCallsDefaultOnError) {
-  pmut_->set_policy(new FailingPolicy());
+TEST_F(UmUpdateManagerTest, PolicyRequestCallsDefaultOnError) {
+  umut_->set_policy(new FailingPolicy());
 
   // Tests that the DefaultPolicy instance is called when the method fails,
   // which will set this as true.
   UpdateCheckParams result;
   result.updates_enabled = false;
-  EvalStatus status = pmut_->PolicyRequest(
+  EvalStatus status = umut_->PolicyRequest(
       &Policy::UpdateCheckAllowed, &result);
   EXPECT_EQ(EvalStatus::kSucceeded, status);
   EXPECT_TRUE(result.updates_enabled);
 }
 
-TEST_F(PmPolicyManagerTest, PolicyRequestDoesntBlock) {
+TEST_F(UmUpdateManagerTest, PolicyRequestDoesntBlock) {
   UpdateCheckParams result;
-  pmut_->set_policy(new LazyPolicy());
+  umut_->set_policy(new LazyPolicy());
 
-  EvalStatus status = pmut_->PolicyRequest(
+  EvalStatus status = umut_->PolicyRequest(
       &Policy::UpdateCheckAllowed, &result);
   EXPECT_EQ(EvalStatus::kAskMeAgainLater, status);
 }
 
-TEST_F(PmPolicyManagerTest, AsyncPolicyRequestDelaysEvaluation) {
+TEST_F(UmUpdateManagerTest, AsyncPolicyRequestDelaysEvaluation) {
   // To avoid differences in code execution order between an AsyncPolicyRequest
   // call on a policy that returns AskMeAgainLater the first time and one that
   // succeeds the first time, we ensure that the passed callback is called from
   // the main loop in both cases even when we could evaluate it right now.
-  pmut_->set_policy(new FailingPolicy());
+  umut_->set_policy(new FailingPolicy());
 
   vector<pair<EvalStatus, UpdateCheckParams>> calls;
   Callback<void(EvalStatus, const UpdateCheckParams& result)> callback =
       Bind(AccumulateCallsCallback<UpdateCheckParams>, &calls);
 
-  pmut_->AsyncPolicyRequest(callback, &Policy::UpdateCheckAllowed);
+  umut_->AsyncPolicyRequest(callback, &Policy::UpdateCheckAllowed);
   // The callback should wait until we run the main loop for it to be executed.
   EXPECT_EQ(0, calls.size());
   chromeos_update_engine::RunGMainLoopMaxIterations(100);
   EXPECT_EQ(1, calls.size());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
diff --git a/policy_manager/updater_provider.h b/update_manager/updater_provider.h
similarity index 87%
rename from policy_manager/updater_provider.h
rename to update_manager/updater_provider.h
index 293dcdc..051ad3a 100644
--- a/policy_manager/updater_provider.h
+++ b/update_manager/updater_provider.h
@@ -2,17 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_UPDATER_PROVIDER_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_UPDATER_PROVIDER_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATER_PROVIDER_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATER_PROVIDER_H_
 
 #include <string>
 
 #include <base/time/time.h>
 
-#include "update_engine/policy_manager/provider.h"
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/provider.h"
+#include "update_engine/update_manager/variable.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 enum class Stage {
   kIdle,
@@ -86,6 +86,6 @@
   DISALLOW_COPY_AND_ASSIGN(UpdaterProvider);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_UPDATER_PROVIDER_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_UPDATER_PROVIDER_H_
diff --git a/policy_manager/variable.h b/update_manager/variable.h
similarity index 90%
rename from policy_manager/variable.h
rename to update_manager/variable.h
index 5b16b5d..3b77d0a 100644
--- a/policy_manager/variable.h
+++ b/update_manager/variable.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_VARIABLE_H_
-#define CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_VARIABLE_H_
+#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_VARIABLE_H_
+#define CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_VARIABLE_H_
 
 #include <algorithm>
 #include <list>
@@ -14,9 +14,9 @@
 #include <base/time/time.h>
 #include <gtest/gtest_prod.h>  // for FRIEND_TEST
 
-#include "update_engine/policy_manager/event_loop.h"
+#include "update_engine/update_manager/event_loop.h"
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // The VariableMode specifies important behavior of the variable in terms of
 // whether, how and when the value of the variable changes.
@@ -114,10 +114,10 @@
   }
 
  private:
-  friend class PmEvaluationContextTest;
-  FRIEND_TEST(PmBaseVariableTest, RepeatedObserverTest);
-  FRIEND_TEST(PmBaseVariableTest, NotifyValueChangedTest);
-  FRIEND_TEST(PmBaseVariableTest, NotifyValueRemovesObserversTest);
+  friend class UmEvaluationContextTest;
+  FRIEND_TEST(UmBaseVariableTest, RepeatedObserverTest);
+  FRIEND_TEST(UmBaseVariableTest, NotifyValueChangedTest);
+  FRIEND_TEST(UmBaseVariableTest, NotifyValueRemovesObserversTest);
 
   BaseVariable(const std::string& name, VariableMode mode,
                base::TimeDelta poll_interval)
@@ -160,7 +160,7 @@
   DISALLOW_COPY_AND_ASSIGN(BaseVariable);
 };
 
-// Interface to a Policy Manager variable of a given type. Implementation
+// Interface to an Update Manager variable of a given type. Implementation
 // internals are hidden as protected members, since policies should not be
 // using them directly.
 template<typename T>
@@ -174,8 +174,8 @@
   friend class EvaluationContext;
 
   // Needed to be able to verify variable contents during unit testing.
-  friend class PmTestUtils;
-  FRIEND_TEST(PmRealRandomProviderTest, GetRandomValues);
+  friend class UmTestUtils;
+  FRIEND_TEST(UmRealRandomProviderTest, GetRandomValues);
 
   Variable(const std::string& name, VariableMode mode)
       : BaseVariable(name, mode) {}
@@ -198,6 +198,6 @@
   DISALLOW_COPY_AND_ASSIGN(Variable);
 };
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager
 
-#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_POLICY_MANAGER_VARIABLE_H_
+#endif  // CHROMEOS_PLATFORM_UPDATE_ENGINE_UPDATE_MANAGER_VARIABLE_H_
diff --git a/policy_manager/variable_unittest.cc b/update_manager/variable_unittest.cc
similarity index 90%
rename from policy_manager/variable_unittest.cc
rename to update_manager/variable_unittest.cc
index f68f7d3..09c7649 100644
--- a/policy_manager/variable_unittest.cc
+++ b/update_manager/variable_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "update_engine/policy_manager/variable.h"
+#include "update_engine/update_manager/variable.h"
 
 #include <vector>
 
@@ -11,11 +11,11 @@
 #include "update_engine/test_utils.h"
 
 using base::TimeDelta;
+using chromeos_update_engine::RunGMainLoopMaxIterations;
 using std::string;
 using std::vector;
-using chromeos_update_engine::RunGMainLoopMaxIterations;
 
-namespace chromeos_policy_manager {
+namespace chromeos_update_manager {
 
 // Variable class that returns a value constructed with the default value.
 template <typename T>
@@ -37,26 +37,26 @@
   DISALLOW_COPY_AND_ASSIGN(DefaultVariable);
 };
 
-TEST(PmBaseVariableTest, GetNameTest) {
+TEST(UmBaseVariableTest, GetNameTest) {
   DefaultVariable<int> var("var", kVariableModeConst);
   EXPECT_EQ(var.GetName(), string("var"));
 }
 
-TEST(PmBaseVariableTest, GetModeTest) {
+TEST(UmBaseVariableTest, GetModeTest) {
   DefaultVariable<int> var("var", kVariableModeConst);
   EXPECT_EQ(var.GetMode(), kVariableModeConst);
   DefaultVariable<int> other_var("other_var", kVariableModePoll);
   EXPECT_EQ(other_var.GetMode(), kVariableModePoll);
 }
 
-TEST(PmBaseVariableTest, DefaultPollIntervalTest) {
+TEST(UmBaseVariableTest, DefaultPollIntervalTest) {
   DefaultVariable<int> const_var("const_var", kVariableModeConst);
   EXPECT_EQ(const_var.GetPollInterval(), TimeDelta());
   DefaultVariable<int> poll_var("poll_var", kVariableModePoll);
   EXPECT_EQ(poll_var.GetPollInterval(), TimeDelta::FromMinutes(5));
 }
 
-TEST(PmBaseVariableTest, GetPollIntervalTest) {
+TEST(UmBaseVariableTest, GetPollIntervalTest) {
   DefaultVariable<int> var("var", TimeDelta::FromMinutes(3));
   EXPECT_EQ(var.GetMode(), kVariableModePoll);
   EXPECT_EQ(var.GetPollInterval(), TimeDelta::FromMinutes(3));
@@ -72,7 +72,7 @@
   vector<BaseVariable*> calls_;
 };
 
-TEST(PmBaseVariableTest, RepeatedObserverTest) {
+TEST(UmBaseVariableTest, RepeatedObserverTest) {
   DefaultVariable<int> var("var", kVariableModeAsync);
   BaseVariableObserver observer;
   var.AddObserver(&observer);
@@ -85,7 +85,7 @@
   EXPECT_EQ(var.observer_list_.size(), 0);
 }
 
-TEST(PmBaseVariableTest, NotifyValueChangedTest) {
+TEST(UmBaseVariableTest, NotifyValueChangedTest) {
   DefaultVariable<int> var("var", kVariableModeAsync);
   BaseVariableObserver observer1;
   var.AddObserver(&observer1);
@@ -135,7 +135,7 @@
 
 // Tests that we can remove an observer from a Variable on the ValueChanged()
 // call to that observer.
-TEST(PmBaseVariableTest, NotifyValueRemovesObserversTest) {
+TEST(UmBaseVariableTest, NotifyValueRemovesObserversTest) {
   DefaultVariable<int> var("var", kVariableModeAsync);
   BaseVariableObserverRemover observer1;
   BaseVariableObserverRemover observer2;
@@ -155,4 +155,4 @@
   EXPECT_EQ(1, observer1.get_calls() + observer2.get_calls());
 }
 
-}  // namespace chromeos_policy_manager
+}  // namespace chromeos_update_manager