treewide: switch to gomod and bump everything

This switches version resolution from fietsje to gomod and updates
all Go dependencies. It also bumps rules_go (required by gVisor) and
switches the Gazelle naming convention from go_default_xxx to the
standard Bazel convention of the default target having the package
name.

Since Kubernetes dropped upstream Bazel support and doesn't check in
all generated files I manually pregenerated the OpenAPI spec. This
should be fixed, but because of the already-huge scope of this CL
and the rebase complexity this is not in here.

Change-Id: Iec8ea613d06946882426c2f9fad5bda7e8aaf833
Reviewed-on: https://review.monogon.dev/c/monogon/+/639
Reviewed-by: Sergiusz Bazanski <serge@monogon.tech>
Reviewed-by: Leopold Schabel <leo@nexantic.com>
diff --git a/metropolis/node/tools.go b/metropolis/node/tools.go
new file mode 100644
index 0000000..9dcb15c
--- /dev/null
+++ b/metropolis/node/tools.go
@@ -0,0 +1,15 @@
+//go:build tools
+// +build tools
+
+package node
+
+import (
+	_ "github.com/containerd/containerd"
+	_ "github.com/containernetworking/plugins/plugins/ipam/host-local"
+	_ "github.com/containernetworking/plugins/plugins/main/loopback"
+	_ "github.com/containernetworking/plugins/plugins/main/ptp"
+	_ "github.com/coredns/coredns"
+	_ "github.com/go-delve/delve/cmd/dlv"
+	_ "github.com/opencontainers/runc"
+	_ "gvisor.dev/gvisor/runsc"
+)