update_engine: Move DaemonStateInterface implementation to UpdateAttempter

It seems like UpdateAttempter is the best option for implementation of
DaemonStateInterface. SystemState should only be doing state keeping not
doing these startup logics.

BUG=b:171829801
TEST=unittests
TEST=CQ passes

Change-Id: I47ec50107ffbeb544e061f39c900a1559f2cdcab
Reviewed-on: https://chromium-review.googlesource.com/c/aosp/platform/system/update_engine/+/2519843
Tested-by: Amin Hassani <ahassani@chromium.org>
Reviewed-by: Jae Hoon Kim <kimjae@chromium.org>
Commit-Queue: Jae Hoon Kim <kimjae@chromium.org>
diff --git a/cros/daemon_chromeos.h b/cros/daemon_chromeos.h
index 5d568c7..3b9c8de 100644
--- a/cros/daemon_chromeos.h
+++ b/cros/daemon_chromeos.h
@@ -47,9 +47,8 @@
   // the main() function.
   Subprocess subprocess_;
 
-  // The daemon state with all the required daemon classes for the configured
-  // platform.
-  std::unique_ptr<DaemonStateInterface> daemon_state_;
+  // The global context sysetm state.
+  std::unique_ptr<SystemState> system_state_;
 
   DISALLOW_COPY_AND_ASSIGN(DaemonChromeOS);
 };