Import gazelle

This patch imports gazelle as a linter. It automatically generates
BUILD file entries for Go code and at the same time keeps BUILD files
formatted.

The `tools/lint:run-ci` target is set up to automatically add new Go
repositories as well.

I added a tool at `//tools/go:mirror_go_repos` that needs to be run
before anyone can merge code that uses third-party Go libraries.

Change-Id: I1fbf6761439d45893f5be88d294ccc3c567840ca
Signed-off-by: Philipp Schrader <philipp.schrader@gmail.com>
diff --git a/BUILD b/BUILD
index 4509a20..62ee0d1 100644
--- a/BUILD
+++ b/BUILD
@@ -1 +1,15 @@
+load("@bazel_gazelle//:def.bzl", "gazelle")
+
 exports_files(["tsconfig.json"])
+
+# gazelle:prefix github.com/frc971/971-Robot-Code
+# gazelle:build_file_name BUILD
+# gazelle:proto disable
+# gazelle:go_generate_proto false
+# gazelle:exclude third_party
+# gazelle:exclude external
+
+gazelle(
+    name = "gazelle",
+    visibility = ["//tools/lint:__subpackages__"],
+)