Use explicit flatbuffer IDs in y2017 and newer.

Non-explicit ids are risky.  We've seen backwards incompatible
changes...

Change-Id: Id6ceebe031ac80430191f367635d0e951c3d2cbc
diff --git a/y2017/control_loops/superstructure/superstructure_position.fbs b/y2017/control_loops/superstructure/superstructure_position.fbs
index 7f95462..5c70ff4 100644
--- a/y2017/control_loops/superstructure/superstructure_position.fbs
+++ b/y2017/control_loops/superstructure/superstructure_position.fbs
@@ -5,27 +5,27 @@
 table ColumnPosition {
   // Indexer angle in radians relative to the base.  Positive is according to
   // the right hand rule around +z.
-  indexer:frc971.HallEffectAndPosition;
+  indexer:frc971.HallEffectAndPosition (id: 0);
   // Turret angle in radians relative to the indexer.  Positive is the same as
   // the indexer.
-  turret:frc971.HallEffectAndPosition;
+  turret:frc971.HallEffectAndPosition (id: 1);
 }
 
 
 table Position {
   // Position of the intake, zero when the intake is in, positive when it is
   // out.
-  intake:frc971.PotAndAbsolutePosition;
+  intake:frc971.PotAndAbsolutePosition (id: 0);
 
   // The position of the column.
-  column:ColumnPosition;
+  column:ColumnPosition (id: 1);
 
   // The sensor readings for the hood. The units and sign are defined the
   // same as what's in the Goal message.
-  hood:frc971.IndexPosition;
+  hood:frc971.IndexPosition (id: 2);
 
   // Shooter wheel angle in radians.
-  theta_shooter:double;
+  theta_shooter:double (id: 3);
 }
 
 root_type Position;