Add minimal functionality test for k8s control plane

Basic functionality test that sends the bootstrap RPC call,
waits for the k8s control plane to come up and runs a simple
kubectl command (that is expected to fail).

Adds reflection to the server to make grpc_cli easier to use.

Test Plan:
Ran `:launch` (because we modified its config) and `:test_boot`,
saw a nicely booted k8s cluster:

{P90}

X-Origin-Diff: phab/D275
GitOrigin-RevId: fe01e3f3ed09877aa76c15946664c9d9bdc4751b
diff --git a/core/internal/api/server.go b/core/internal/api/server.go
index 715e99e..efd0be5 100644
--- a/core/internal/api/server.go
+++ b/core/internal/api/server.go
@@ -24,6 +24,7 @@
 	"git.monogon.dev/source/nexantic.git/core/internal/consensus"
 	"go.uber.org/zap"
 	"google.golang.org/grpc"
+	"google.golang.org/grpc/reflection"
 	"net"
 )
 
@@ -57,6 +58,8 @@
 	schema.RegisterClusterManagementServer(grpcServer, s)
 	schema.RegisterSetupServiceServer(grpcServer, s)
 
+	reflection.Register(grpcServer)
+
 	s.grpcServer = grpcServer
 
 	return s, nil