Make swerve_control_loops use continuous controller & zeroing

This updates the per-module control code to make use of the continuous
control loops and to actually zero the modules so that we can do simple
data collection.

Future TODOs:
* Update the control loop to use the static flatbuffers API.

Change-Id: I40c41fb207cbee9ddc3c31d4b5b023da468964d8
Signed-off-by: James Kuszmaul <jabukuszmaul+collab@gmail.com>
diff --git a/frc971/control_loops/swerve/BUILD b/frc971/control_loops/swerve/BUILD
index 2d06837..1b8dcc3 100644
--- a/frc971/control_loops/swerve/BUILD
+++ b/frc971/control_loops/swerve/BUILD
@@ -67,7 +67,10 @@
         ":swerve_drivetrain_output_fbs",
         ":swerve_drivetrain_position_fbs",
         ":swerve_drivetrain_status_fbs",
+        ":swerve_zeroing_fbs",
         "//frc971/control_loops:control_loop",
+        "//frc971/control_loops:static_zeroing_single_dof_profiled_subsystem",
+        "//frc971/zeroing:continuous_absolute_encoder",
     ],
 )
 
@@ -76,6 +79,7 @@
     srcs = ["swerve_control_test.cc"],
     data = [
         ":aos_config",
+        "//frc971/control_loops/swerve/test_module:rotation_json",
     ],
     target_compatible_with = ["@platforms//os:linux"],
     deps = [