Fold y2019 localizer into drivetrain

Change-Id: Icc192ae9f910741b54f114ec9a27559cc289b29b
diff --git a/y2019/control_loops/drivetrain/BUILD b/y2019/control_loops/drivetrain/BUILD
index 310b853..677726e 100644
--- a/y2019/control_loops/drivetrain/BUILD
+++ b/y2019/control_loops/drivetrain/BUILD
@@ -76,12 +76,20 @@
     visibility = ["//visibility:public"],
     deps = [
         ":drivetrain_base",
+        ":event_loop_localizer",
         "//aos:init",
         "//aos/events:shm-event-loop",
         "//frc971/control_loops/drivetrain:drivetrain_lib",
     ],
 )
 
+queue_library(
+    name = "camera_queue",
+    srcs = [
+        "camera.q",
+    ],
+)
+
 cc_library(
     name = "camera",
     srcs = ["camera.h"],
@@ -111,6 +119,18 @@
     ],
 )
 
+cc_library(
+    name = "event_loop_localizer",
+    srcs = ["event_loop_localizer.cc"],
+    hdrs = ["event_loop_localizer.h"],
+    deps = [
+        ":camera_queue",
+        ":localizer",
+        "//frc971/control_loops/drivetrain:localizer",
+        "//y2019:constants",
+    ],
+)
+
 cc_test(
     name = "localizer_test",
     srcs = ["localizer_test.cc"],
@@ -139,3 +159,19 @@
         "arm": [],
     }),
 )
+
+cc_test(
+    name = "localized_drivetrain_test",
+    srcs = ["localized_drivetrain_test.cc"],
+    deps = [
+        ":camera_queue",
+        ":drivetrain_base",
+        ":event_loop_localizer",
+        ":localizer",
+        "//aos/controls:control_loop_test",
+        "//aos/network:team_number",
+        "//frc971/control_loops:team_number_test_environment",
+        "//frc971/control_loops/drivetrain:drivetrain_lib",
+        "//frc971/control_loops/drivetrain:drivetrain_test_lib",
+    ],
+)