go: re-do the entire thing

This is a mega-change, but attempting to split this up further is
probably not worth the effort.

Summary:

1. Bump up bazel, rules_go, and others.
2. Switch to new go target naming (bye bye go_default_library)
3. Move go deps to go.mod/go.sum, use make gazelle generate from that
4. Bump up Python deps a bit

And also whatever was required to actually get things to work - loads of
small useless changes.

Tested to work on NixOS and Ubuntu 20.04:

   $ bazel build //...
   $ bazel test //...

Change-Id: I8364bdaa1406b9ae4d0385a6b607f3e7989f98a9
Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1583
Reviewed-by: q3k <q3k@hackerspace.pl>
diff --git a/dc/arista-proxy/BUILD.bazel b/dc/arista-proxy/BUILD.bazel
index e337068..9acae47 100644
--- a/dc/arista-proxy/BUILD.bazel
+++ b/dc/arista-proxy/BUILD.bazel
@@ -1,7 +1,7 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
 
 go_library(
-    name = "go_default_library",
+    name = "arista-proxy_lib",
     srcs = [
         "main.go",
         "service.go",
@@ -9,17 +9,17 @@
     importpath = "code.hackerspace.pl/hscloud/dc/arista-proxy",
     visibility = ["//visibility:private"],
     deps = [
-        "//dc/arista-proxy/proto:go_default_library",
-        "//go/mirko:go_default_library",
-        "@com_github_golang_glog//:go_default_library",
-        "@com_github_q3k_cursedjsonrpc//:go_default_library",
-        "@org_golang_google_grpc//codes:go_default_library",
-        "@org_golang_google_grpc//status:go_default_library",
+        "//dc/arista-proxy/proto",
+        "//go/mirko",
+        "@com_github_golang_glog//:glog",
+        "@com_github_q3k_cursedjsonrpc//:cursedjsonrpc",
+        "@org_golang_google_grpc//codes",
+        "@org_golang_google_grpc//status",
     ],
 )
 
 go_binary(
     name = "arista-proxy",
-    embed = [":go_default_library"],
+    embed = [":arista-proxy_lib"],
     visibility = ["//visibility:public"],
 )
diff --git a/dc/arista-proxy/main.go b/dc/arista-proxy/main.go
index ed4a9b3..15c9262 100644
--- a/dc/arista-proxy/main.go
+++ b/dc/arista-proxy/main.go
@@ -6,7 +6,7 @@
 
 	"code.hackerspace.pl/hscloud/go/mirko"
 	"github.com/golang/glog"
-	"github.com/q3k/cursedjsonrpc"
+	cursedjsonrpc "github.com/q3k/cursedjsonrpc"
 
 	pb "code.hackerspace.pl/hscloud/dc/arista-proxy/proto"
 )
diff --git a/dc/arista-proxy/proto/BUILD.bazel b/dc/arista-proxy/proto/BUILD.bazel
index 2df4f58..cb390ab 100644
--- a/dc/arista-proxy/proto/BUILD.bazel
+++ b/dc/arista-proxy/proto/BUILD.bazel
@@ -1,3 +1,4 @@
+load("@rules_proto//proto:defs.bzl", "proto_library")
 load("@io_bazel_rules_go//go:def.bzl", "go_library")
 load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
 
@@ -16,7 +17,7 @@
 )
 
 go_library(
-    name = "go_default_library",
+    name = "proto",
     embed = [":proto_go_proto"],
     importpath = "code.hackerspace.pl/hscloud/dc/arista-proxy/proto",
     visibility = ["//visibility:public"],