Put remote boot UUID in ServerStatistics and RemoteMessage

This makes it so we can see when a remote reboots easily, and gives us a
stepping stone to putting it in the log file header.

RemoteMessage then goes to the logger, so we are ready to teach the
logger how to detect and handle reboots.

Change-Id: I943de46094b60535c92a677b430d6828933b820d
diff --git a/aos/events/logging/uuid.h b/aos/events/logging/uuid.h
index 0387a4b..d7ec33a 100644
--- a/aos/events/logging/uuid.h
+++ b/aos/events/logging/uuid.h
@@ -13,8 +13,16 @@
   // Returns a randomly generated UUID.  This is known as a UUID4.
   static UUID Random();
 
+  // Returns a uuid with all '0' characters.
   static UUID Zero();
 
+  static UUID FromString(std::string_view);
+
+  static UUID BootUUID();
+
+  // Size of a UUID.
+  static constexpr size_t kSize = 36;
+
   std::string_view string_view() const {
     return std::string_view(data_.data(), data_.size());
   }
@@ -30,7 +38,7 @@
   UUID() {}
 
   // Fixed size storage for the data.  Non-null terminated.
-  std::array<char, 36> data_;
+  std::array<char, kSize> data_;
 };
 
 }  // namespace aos