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/gyro_sender.cc b/frc971/wpilib/gyro_sender.cc
index 3a9f220..f5297c0 100644
--- a/frc971/wpilib/gyro_sender.cc
+++ b/frc971/wpilib/gyro_sender.cc
@@ -7,14 +7,13 @@
 
 #include <chrono>
 
-#include "aos/events/event-loop.h"
+#include "aos/events/event_loop.h"
 #include "aos/init.h"
 #include "aos/logging/logging.h"
-#include "aos/logging/queue_logging.h"
-#include "aos/robot_state/robot_state.q.h"
+#include "aos/robot_state/robot_state_generated.h"
 #include "aos/time/time.h"
 
-#include "frc971/queues/gyro.q.h"
+#include "frc971/queues/gyro_generated.h"
 #include "frc971/zeroing/averager.h"
 
 namespace frc971 {
@@ -25,13 +24,12 @@
 
 GyroSender::GyroSender(::aos::EventLoop *event_loop)
     : event_loop_(event_loop),
-      joystick_state_fetcher_(event_loop_->MakeFetcher<::aos::JoystickState>(
-          ".aos.joystick_state")),
-      uid_sender_(event_loop_->MakeSender<::frc971::sensors::Uid>(
-          ".frc971.sensors.gyro_part_id")),
+      joystick_state_fetcher_(
+          event_loop_->MakeFetcher<aos::RobotState>("/aos")),
+      uid_sender_(event_loop_->MakeSender<frc971::sensors::Uid>("/drivetrain")),
       gyro_reading_sender_(
-          event_loop_->MakeSender<::frc971::sensors::GyroReading>(
-              ".frc971.sensors.gyro_reading")) {
+          event_loop_->MakeSender<frc971::sensors::GyroReading>(
+              "/drivetrain")) {
   AOS_PCHECK(
       system("ps -ef | grep '\\[spi0\\]' | awk '{print $1}' | xargs chrt -f -p "
              "33") == 0);
@@ -55,12 +53,9 @@
           state_ = State::RUNNING;
           AOS_LOG(INFO, "gyro initialized successfully\n");
 
-          {
-            auto message = uid_sender_.MakeMessage();
-            message->uid = gyro_.ReadPartID();
-            AOS_LOG_STRUCT(INFO, "gyro ID", *message);
-            message.Send();
-          }
+          auto builder = uid_sender_.MakeBuilder();
+          builder.Send(
+              frc971::sensors::CreateUid(*builder.fbb(), gyro_.ReadPartID()));
         }
         last_initialize_time_ = monotonic_now;
       }
@@ -115,30 +110,31 @@
 
       const double angle_rate = gyro_.ExtractAngle(result);
       const double new_angle = angle_rate / static_cast<double>(kReadingRate);
-      auto message = gyro_reading_sender_.MakeMessage();
+      auto builder = gyro_reading_sender_.MakeBuilder();
       if (zeroed_) {
         angle_ += (new_angle + zero_offset_) * iterations;
-        message->angle = angle_;
-        message->velocity = angle_rate + zero_offset_ * kReadingRate;
-        AOS_LOG_STRUCT(DEBUG, "sending", *message);
-        message.Send();
+        sensors::GyroReading::Builder gyro_builder =
+            builder.MakeBuilder<sensors::GyroReading>();
+        gyro_builder.add_angle(angle_);
+        gyro_builder.add_velocity(angle_rate + zero_offset_ * kReadingRate);
+        builder.Send(gyro_builder.Finish());
       } else {
         // TODO(brian): Don't break without 6 seconds of standing still before
         // enabling. Ideas:
         //   Don't allow driving until we have at least some data?
         //   Some kind of indicator light?
         {
-          message->angle = new_angle;
-          message->velocity = angle_rate;
-          AOS_LOG_STRUCT(DEBUG, "collected while zeroing", *message);
-          message->angle = 0.0;
-          message->velocity = 0.0;
-          message.Send();
+          sensors::GyroReading::Builder gyro_builder =
+              builder.MakeBuilder<sensors::GyroReading>();
+          gyro_builder.add_angle(0.0);
+          gyro_builder.add_velocity(0.0);
+          builder.Send(gyro_builder.Finish());
         }
         zeroing_data_.AddData(new_angle);
 
         joystick_state_fetcher_.Fetch();
-        if (joystick_state_fetcher_.get() && joystick_state_fetcher_->enabled &&
+        if (joystick_state_fetcher_.get() &&
+            joystick_state_fetcher_->outputs_enabled() &&
             zeroing_data_.full()) {
           zero_offset_ = -zeroing_data_.GetAverage();
           AOS_LOG(INFO, "total zero offset %f\n", zero_offset_);