Make a mutual drivetrain between robots.

Change-Id: I23cc9634d9af5d0482dc5a5501dccc064b7b53d3
diff --git a/y2014/actors/BUILD b/y2014/actors/BUILD
index 6fea9eb..ef94367 100644
--- a/y2014/actors/BUILD
+++ b/y2014/actors/BUILD
@@ -35,7 +35,7 @@
     '//aos/common/logging',
     '//y2014/control_loops/shooter:shooter_queue',
     '//y2014/control_loops/claw:claw_queue',
-    '//y2014/control_loops/drivetrain:drivetrain_queue',
+    '//frc971/control_loops/drivetrain:drivetrain_queue',
     '//y2014:constants',
   ],
 )
@@ -81,7 +81,7 @@
     '//aos/common/logging:queue_logging',
     '//third_party/eigen',
     '//aos/common/util:trapezoid_profile',
-    '//y2014/control_loops/drivetrain:drivetrain_queue',
+    '//frc971/control_loops/drivetrain:drivetrain_queue',
     '//frc971/control_loops:state_feedback_loop',
   ],
 )
diff --git a/y2014/actors/drivetrain_actor.cc b/y2014/actors/drivetrain_actor.cc
index 9f94ff4..4cb69ca 100644
--- a/y2014/actors/drivetrain_actor.cc
+++ b/y2014/actors/drivetrain_actor.cc
@@ -13,7 +13,7 @@
 
 #include "y2014/actors/drivetrain_actor.h"
 #include "y2014/constants.h"
-#include "y2014/control_loops/drivetrain/drivetrain.q.h"
+#include "frc971/control_loops/drivetrain/drivetrain.q.h"
 
 namespace y2014 {
 namespace actors {
@@ -50,9 +50,9 @@
   while (true) {
     ::aos::time::PhasedLoopXMS(5, 2500);
 
-    control_loops::drivetrain_queue.status.FetchLatest();
-    if (control_loops::drivetrain_queue.status.get()) {
-      const auto& status = *control_loops::drivetrain_queue.status;
+    ::frc971::control_loops::drivetrain_queue.status.FetchLatest();
+    if (::frc971::control_loops::drivetrain_queue.status.get()) {
+      const auto& status = *::frc971::control_loops::drivetrain_queue.status;
       if (::std::abs(status.uncapped_left_voltage -
                      status.uncapped_right_voltage) > 24) {
         LOG(DEBUG, "spinning in place\n");
@@ -119,7 +119,7 @@
     LOG(DEBUG, "Driving left to %f, right to %f\n",
         left_goal_state(0, 0) + params.left_initial_position,
         right_goal_state(0, 0) + params.right_initial_position);
-    control_loops::drivetrain_queue.goal.MakeWithBuilder()
+    ::frc971::control_loops::drivetrain_queue.goal.MakeWithBuilder()
         .control_loop_driving(true)
         .highgear(true)
         .left_goal(left_goal_state(0, 0) + params.left_initial_position)
@@ -129,11 +129,11 @@
         .Send();
   }
   if (ShouldCancel()) return true;
-  control_loops::drivetrain_queue.status.FetchLatest();
-  while (!control_loops::drivetrain_queue.status.get()) {
+  ::frc971::control_loops::drivetrain_queue.status.FetchLatest();
+  while (!::frc971::control_loops::drivetrain_queue.status.get()) {
     LOG(WARNING,
         "No previous drivetrain status packet, trying to fetch again\n");
-    control_loops::drivetrain_queue.status.FetchNextBlocking();
+    ::frc971::control_loops::drivetrain_queue.status.FetchNextBlocking();
     if (ShouldCancel()) return true;
   }
   while (true) {
@@ -141,13 +141,13 @@
     const double kPositionThreshold = 0.05;
 
     const double left_error = ::std::abs(
-        control_loops::drivetrain_queue.status->filtered_left_position -
+        ::frc971::control_loops::drivetrain_queue.status->filtered_left_position -
         (left_goal_state(0, 0) + params.left_initial_position));
     const double right_error = ::std::abs(
-        control_loops::drivetrain_queue.status->filtered_right_position -
+        ::frc971::control_loops::drivetrain_queue.status->filtered_right_position -
         (right_goal_state(0, 0) + params.right_initial_position));
     const double velocity_error =
-        ::std::abs(control_loops::drivetrain_queue.status->robot_speed);
+        ::std::abs(::frc971::control_loops::drivetrain_queue.status->robot_speed);
     if (left_error < kPositionThreshold && right_error < kPositionThreshold &&
         velocity_error < 0.2) {
       break;
@@ -155,7 +155,7 @@
       LOG(DEBUG, "Drivetrain error is %f, %f, %f\n", left_error, right_error,
           velocity_error);
     }
-    control_loops::drivetrain_queue.status.FetchNextBlocking();
+    ::frc971::control_loops::drivetrain_queue.status.FetchNextBlocking();
   }
   LOG(INFO, "Done moving\n");
   return true;
diff --git a/y2014/actors/shoot_actor.cc b/y2014/actors/shoot_actor.cc
index a70d692..743a4c3 100644
--- a/y2014/actors/shoot_actor.cc
+++ b/y2014/actors/shoot_actor.cc
@@ -7,7 +7,7 @@
 #include "y2014/control_loops/shooter/shooter.q.h"
 #include "y2014/control_loops/claw/claw.q.h"
 #include "y2014/constants.h"
-#include "y2014/control_loops/drivetrain/drivetrain.q.h"
+#include "frc971/control_loops/drivetrain/drivetrain.q.h"
 
 namespace y2014 {
 namespace actors {