Update swerve_publisher to use Goal message

Rather than attempting to send raw outputs, send the goal instead. This
also updates the swerve_publisher to handle Ctrl-C's more cleanly.

Change-Id: Ibdfe94d48295c184083c90b8672986433737bfa7
Signed-off-by: James Kuszmaul <jabukuszmaul+collab@gmail.com>
diff --git a/y2024_swerve/swerve_publisher_lib.h b/y2024_swerve/swerve_publisher_lib.h
index e490738..6cae518 100644
--- a/y2024_swerve/swerve_publisher_lib.h
+++ b/y2024_swerve/swerve_publisher_lib.h
@@ -9,7 +9,7 @@
 #include "aos/flatbuffer_merge.h"
 #include "aos/init.h"
 #include "aos/json_to_flatbuffer.h"
-#include "frc971/control_loops/swerve/swerve_drivetrain_output_generated.h"
+#include "frc971/control_loops/swerve/swerve_drivetrain_goal_static.h"
 
 namespace y2024_swerve {
 
@@ -18,8 +18,11 @@
   SwervePublisher(aos::EventLoop *event_loop, aos::ExitHandle *exit_handle,
                   const std::string &filename, double duration);
 
+  ~SwervePublisher();
+
  private:
-  aos::Sender<frc971::control_loops::swerve::Output> drivetrain_output_sender_;
+  aos::Sender<frc971::control_loops::swerve::GoalStatic>
+      drivetrain_goal_sender_;
 };
 
 }  // namespace y2024_swerve