Convert aos over to flatbuffers

Everything builds, and all the tests pass.  I suspect that some entries
are missing from the config files, but those will be found pretty
quickly on startup.

There is no logging or live introspection of queue messages.

Change-Id: I496ee01ed68f202c7851bed7e8786cee30df29f5
diff --git a/frc971/wpilib/wpilib_interface.cc b/frc971/wpilib/wpilib_interface.cc
index 4216e3b..8772af1 100644
--- a/frc971/wpilib/wpilib_interface.cc
+++ b/frc971/wpilib/wpilib_interface.cc
@@ -1,30 +1,38 @@
 #include "frc971/wpilib/wpilib_interface.h"
 
-#include "aos/robot_state/robot_state.q.h"
+#include "aos/events/event_loop.h"
+#include "aos/logging/logging.h"
+#include "aos/robot_state/robot_state_generated.h"
 
 #include "hal/HAL.h"
 
 namespace frc971 {
 namespace wpilib {
 
-void PopulateRobotState(::aos::RobotState *robot_state, int32_t my_pid) {
+flatbuffers::Offset<aos::RobotState> PopulateRobotState(
+    aos::Sender<::aos::RobotState>::Builder *builder, int32_t my_pid) {
   int32_t status = 0;
 
-  robot_state->reader_pid = my_pid;
-  robot_state->outputs_enabled = HAL_GetSystemActive(&status);
-  robot_state->browned_out = HAL_GetBrownedOut(&status);
+  aos::RobotState::Builder robot_state_builder =
+      builder->MakeBuilder<aos::RobotState>();
 
-  robot_state->is_3v3_active = HAL_GetUserActive3V3(&status);
-  robot_state->is_5v_active = HAL_GetUserActive5V(&status);
-  robot_state->voltage_3v3 = HAL_GetUserVoltage3V3(&status);
-  robot_state->voltage_5v = HAL_GetUserVoltage5V(&status);
+  robot_state_builder.add_reader_pid(my_pid);
+  robot_state_builder.add_outputs_enabled(HAL_GetSystemActive(&status));
+  robot_state_builder.add_browned_out(HAL_GetBrownedOut(&status));
 
-  robot_state->voltage_roborio_in = HAL_GetVinVoltage(&status);
-  robot_state->voltage_battery = HAL_GetVinVoltage(&status);
+  robot_state_builder.add_is_3v3_active(HAL_GetUserActive3V3(&status));
+  robot_state_builder.add_is_5v_active(HAL_GetUserActive5V(&status));
+  robot_state_builder.add_voltage_3v3(HAL_GetUserVoltage3V3(&status));
+  robot_state_builder.add_voltage_5v(HAL_GetUserVoltage5V(&status));
+
+  robot_state_builder.add_voltage_roborio_in(HAL_GetVinVoltage(&status));
+  robot_state_builder.add_voltage_battery(HAL_GetVinVoltage(&status));
 
   if (status != 0) {
     AOS_LOG(FATAL, "Failed to get robot state: %d\n", status);
   }
+
+  return robot_state_builder.Finish();
 }
 
 }  // namespace wpilib