y2019 robot code starts!

We are now deploying the config, and all the missing locations are now
available.  Some channels got renamed to be more user friendly.

Change-Id: Idc771998b24a769994ec80f3aee292b0d1ac6240
diff --git a/frc971/autonomous/BUILD b/frc971/autonomous/BUILD
index 2eb4be0..12698a9 100644
--- a/frc971/autonomous/BUILD
+++ b/frc971/autonomous/BUILD
@@ -1,10 +1,19 @@
 package(default_visibility = ["//visibility:public"])
 
+load("//aos:config.bzl", "aos_config")
 load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
 
 flatbuffer_cc_library(
     name = "auto_fbs",
     srcs = ["auto.fbs"],
+    gen_reflections = 1,
+    visibility = ["//visibility:public"],
+)
+
+flatbuffer_cc_library(
+    name = "auto_mode_fbs",
+    srcs = ["auto_mode.fbs"],
+    gen_reflections = 1,
     visibility = ["//visibility:public"],
 )
 
@@ -29,3 +38,14 @@
         "//y2019/control_loops/drivetrain:target_selector_fbs",
     ],
 )
+
+aos_config(
+    name = "config",
+    src = "autonomous_config.json",
+    flatbuffers = [
+        "//aos/actions:actions_fbs",
+        ":auto_fbs",
+        ":auto_mode_fbs",
+    ],
+    visibility = ["//visibility:public"],
+)
diff --git a/frc971/autonomous/auto.fbs b/frc971/autonomous/auto.fbs
index 92ca532..ef8e915 100644
--- a/frc971/autonomous/auto.fbs
+++ b/frc971/autonomous/auto.fbs
@@ -1,11 +1,5 @@
 namespace frc971.autonomous;
 
-// Published on ".frc971.autonomous.auto_mode"
-table AutonomousMode {
-  // Mode read from the mode setting sensors.
-  mode:int;
-}
-
 table AutonomousActionParams {
   // The mode from the sensors when auto starts.
   mode:int;
@@ -15,3 +9,5 @@
   run:uint;
   params:AutonomousActionParams;
 }
+
+root_type Goal;
diff --git a/frc971/autonomous/auto_mode.fbs b/frc971/autonomous/auto_mode.fbs
new file mode 100644
index 0000000..412cd17
--- /dev/null
+++ b/frc971/autonomous/auto_mode.fbs
@@ -0,0 +1,8 @@
+namespace frc971.autonomous;
+
+table AutonomousMode {
+  // Mode read from the mode setting sensors.
+  mode:int;
+}
+
+root_type AutonomousMode;
diff --git a/frc971/autonomous/autonomous_config.json b/frc971/autonomous/autonomous_config.json
new file mode 100644
index 0000000..5320325
--- /dev/null
+++ b/frc971/autonomous/autonomous_config.json
@@ -0,0 +1,17 @@
+{
+  "channels":
+  [
+    {
+      "name": "/autonomous",
+      "type": "aos.common.actions.Status"
+    },
+    {
+      "name": "/autonomous",
+      "type": "frc971.autonomous.Goal"
+    },
+    {
+      "name": "/autonomous",
+      "type": "frc971.autonomous.AutonomousMode"
+    }
+  ]
+}
diff --git a/frc971/autonomous/base_autonomous_actor.h b/frc971/autonomous/base_autonomous_actor.h
index 6035551..09d9a0e 100644
--- a/frc971/autonomous/base_autonomous_actor.h
+++ b/frc971/autonomous/base_autonomous_actor.h
@@ -25,7 +25,7 @@
       const control_loops::drivetrain::DrivetrainConfig<double> &dt_config);
 
   static Factory MakeFactory(::aos::EventLoop *event_loop) {
-    return Factory(event_loop, ".frc971.autonomous.autonomous_action");
+    return Factory(event_loop, "/autonomous");
   }
 
  protected: