Implement setShouldSwitchSlotOnReboot and resetShouldSwitchSlotOnReboot

Test: Install OTA, call resetShouldSwitchSlotOnReboot, make sure slot is
set to _a, call setShouldSwitchSlot, make sure slot is set to _b

Bug: 187321613

Change-Id: I4d0a5ed9292bdbefda4b48e84dbcfb4751406b28
diff --git a/common/utils.h b/common/utils.h
index 9ed0c7b..c1820ee 100644
--- a/common/utils.h
+++ b/common/utils.h
@@ -32,6 +32,7 @@
 
 #include <base/files/file_path.h>
 #include <base/posix/eintr_wrapper.h>
+#include <base/strings/string_number_conversions.h>
 #include <base/time/time.h>
 #include <brillo/key_value_store.h>
 #include <brillo/secure_blob.h>
@@ -479,6 +480,8 @@
   T t2_;
 };
 
+std::string HexEncode(const brillo::Blob& blob) noexcept;
+
 }  // namespace chromeos_update_engine
 
 #define TEST_AND_RETURN_FALSE_ERRNO(_x)                              \