Merge changes Id529d52b,If41592ff

* changes:
  Flip flatbuffers ForceDefault default to true.
  Add names to timer and phased loop handlers.
diff --git a/aos/network/BUILD b/aos/network/BUILD
index 6fe0585..d5c27b3 100644
--- a/aos/network/BUILD
+++ b/aos/network/BUILD
@@ -9,7 +9,7 @@
         "team_number.h",
     ],
     deps = [
-        "//aos:once",
+        "@com_google_absl//absl/base",
         "//aos/logging",
         "//aos/util:string_to_num",
         "//aos:configuration",
diff --git a/aos/network/team_number.cc b/aos/network/team_number.cc
index c4fa5c2..852ce93 100644
--- a/aos/network/team_number.cc
+++ b/aos/network/team_number.cc
@@ -10,7 +10,7 @@
 #include "aos/logging/logging.h"
 #include "aos/util/string_to_num.h"
 #include "aos/configuration.h"
-#include "aos/once.h"
+#include "absl/base/call_once.h"
 
 namespace aos {
 namespace network {
@@ -51,33 +51,35 @@
   return buf;
 }
 
-uint16_t *DoGetTeamNumber() {
-  if (override_team != 0) return &override_team;
-
-  static uint16_t r;
+void DoGetTeamNumber(uint16_t *result) {
+  if (override_team != 0) {
+      *result = override_team;
+      return;
+  }
 
   const char *override_number = getenv("AOS_TEAM_NUMBER");
   if (override_number != nullptr) {
-    if (!::aos::util::StringToNumber(override_number, &r)) {
+    if (!::aos::util::StringToNumber(override_number, result)) {
       AOS_LOG(FATAL, "error parsing AOS_TEAM_NUMBER '%s'\n", override_number);
     }
     AOS_LOG(WARNING,
-            "team number overridden by AOS_TEAM_NUMBER to %" PRIu16 "\n", r);
+            "team number overridden by AOS_TEAM_NUMBER to %" PRIu16 "\n", *result);
   } else {
-    int error = internal::ParseTeamNumber(GetHostname(), &r);
+    int error = internal::ParseTeamNumber(GetHostname(), result);
     if (error) {
       AOS_LOG(FATAL, "Invalid hostname %s\n", GetHostname().c_str());
     }
-    AOS_LOG(INFO, "team number is %" PRIu16 "\n", r);
+    AOS_LOG(INFO, "team number is %" PRIu16 "\n", *result);
   }
-  return &r;
 }
 
 }  // namespace
 
 uint16_t GetTeamNumber() {
-  static Once<uint16_t> once(DoGetTeamNumber);
-  return *once.Get();
+  static absl::once_flag once;
+  static uint16_t result;
+  absl::call_once(once, DoGetTeamNumber, &result);
+  return result;
 }
 
 void OverrideTeamNumber(uint16_t team) { override_team = team; }
diff --git a/y2017/BUILD b/y2017/BUILD
index 8bf2ff8..96b2d92 100644
--- a/y2017/BUILD
+++ b/y2017/BUILD
@@ -11,7 +11,6 @@
     ],
     visibility = ["//visibility:public"],
     deps = [
-        "//aos:once",
         "//aos/logging",
         "//aos/mutex",
         "@com_google_absl//absl/base",