Finally add auto mode.

It is pretty basic now, it just drives forward and puts a ball
in the low goal. This did involve copying over some of the
action stuff, though, and I fixed a couple silly issues in
the frc971 versions while I was at it.

Change-Id: Idc18ea63dd74ba8ba5405264f212ebe993084aa9
diff --git a/frc971/actions/action.h b/frc971/actions/action.h
index 1fc50ea..1243e58 100644
--- a/frc971/actions/action.h
+++ b/frc971/actions/action.h
@@ -9,8 +9,6 @@
 #include "aos/common/logging/logging.h"
 #include "aos/common/time.h"
 
-#include "frc971/constants.h"
-
 namespace frc971 {
 namespace actions {
 
diff --git a/frc971/actions/actions.gyp b/frc971/actions/actions.gyp
index 0ddd61c..ff18204 100644
--- a/frc971/actions/actions.gyp
+++ b/frc971/actions/actions.gyp
@@ -140,12 +140,10 @@
       ],
       'dependencies': [
         '<(AOS)/build/aos.gyp:logging',
-        '<(DEPTH)/frc971/frc971.gyp:constants',
         '<(AOS)/common/common.gyp:time',
       ],
       'export_dependent_settings': [
         '<(AOS)/build/aos.gyp:logging',
-        '<(DEPTH)/frc971/frc971.gyp:constants',
         '<(AOS)/common/common.gyp:time',
       ],
     },
diff --git a/frc971/actions/catch_action.cc b/frc971/actions/catch_action.cc
index 350b6f6..7b67645 100644
--- a/frc971/actions/catch_action.cc
+++ b/frc971/actions/catch_action.cc
@@ -1,3 +1,4 @@
+#include <complex>
 #include <functional>
 
 #include "aos/common/logging/logging.h"
diff --git a/frc971/actions/drivetrain_action.h b/frc971/actions/drivetrain_action.h
index b164e22..0a256b8 100644
--- a/frc971/actions/drivetrain_action.h
+++ b/frc971/actions/drivetrain_action.h
@@ -1,3 +1,6 @@
+#ifndef FRC971_ACTIONS_DRIVETRAIN_ACTION_H_
+#define FRC971_ACTIONS_DRIVETRAIN_ACTION_H_
+
 #include <memory>
 
 #include "frc971/actions/drivetrain_action.q.h"
@@ -20,3 +23,5 @@
 
 }  // namespace actions
 }  // namespace frc971
+
+#endif
diff --git a/frc971/autonomous/auto.cc b/frc971/autonomous/auto.cc
index af29c46..29722e4 100644
--- a/frc971/autonomous/auto.cc
+++ b/frc971/autonomous/auto.cc
@@ -193,8 +193,7 @@
   left_initial_position +=
       distance - theta * constants::GetValues().turn_width / 2.0;
   right_initial_position +=
-      distance + theta * constants::GetValues().turn_width / 2. -
-      theta * constants::GetValues().turn_width / 2.00;
+      distance + theta * constants::GetValues().turn_width / 2.0;
   return ::std::move(drivetrain_action);
 }