Import foxglove schemas repo

This has to do a couple of things:
* Actually import the repo as an http_archive.
* Modify the cc_static_flatbuffer rule to allow it to handle a
  flatbuffer target with multiple fbs files.
* Move foxglove-related third_party files into one directory.

Change-Id: I0123fc8037b107019f9c29b781418c9a03639eca
Signed-off-by: James Kuszmaul <jabukuszmaul@gmail.com>
diff --git a/third_party/foxglove/schemas/schemas.BUILD b/third_party/foxglove/schemas/schemas.BUILD
new file mode 100644
index 0000000..a1a5d29
--- /dev/null
+++ b/third_party/foxglove/schemas/schemas.BUILD
@@ -0,0 +1,21 @@
+load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library", "DEFAULT_FLATC_ARGS")
+
+FLATC_ARGS = [arg for arg in DEFAULT_FLATC_ARGS if arg != "--require-explicit-ids"]
+
+flatbuffer_cc_library(
+    name = "schemas",
+    srcs = glob(["*.fbs"]),
+    flatc_args = FLATC_ARGS,
+    gen_reflections = True,
+    visibility = ["//visibility:public"],
+)
+
+load("@org_frc971//aos:flatbuffers.bzl", "cc_static_flatbuffer")
+
+[cc_static_flatbuffer(
+    name = filename[:-4] + "_schema",
+    bfbs_name = filename[:-4] + ".bfbs",
+    function = "foxglove::" + filename[:-4] + "Schema",
+    target = ":schemas_reflection_out",
+    visibility = ["//visibility:public"],
+) for filename in glob(["*.fbs"])]