redid actions to use a counter and not have race conditions

Before, there were a lot of ways for the client-side action code to lock
up.
diff --git a/frc971/actions/drivetrain_action.q b/frc971/actions/drivetrain_action.q
index cde518c..5797378 100644
--- a/frc971/actions/drivetrain_action.q
+++ b/frc971/actions/drivetrain_action.q
@@ -1,9 +1,9 @@
 package frc971.actions;
 
+import "frc971/actions/action.q";
+
 queue_group DrivetrainActionQueueGroup {
-  message Status {
-    bool running;
-  };
+  implements frc971.actions.ActionQueueGroup;
 
   message Goal {
     // If true, run this action.  If false, cancel the action if it is
@@ -16,7 +16,7 @@
   };
 
   queue Goal goal;
-  queue Status status;
+  queue frc971.actions.Status status;
 };
 
 queue_group DrivetrainActionQueueGroup drivetrain_action;