m/node: move clusternet under network

Move the clusternet network side under the core/network umbrella and
rename it to overlay. Also split out types.go into the ipam package
to get the overlay package out of a lot of dependents which only import
it for the Prefixes type which should be part of the ipam package.

This is a clean move with no functional changes intended yet, these
will be stacked on top.

Change-Id: I6a6a6964af9d608f9ec3bf75b386c010cfff1df4
Reviewed-on: https://review.monogon.dev/c/monogon/+/4500
Tested-by: Jenkins CI
Reviewed-by: Jan Schär <jan@monogon.tech>
diff --git a/metropolis/node/kubernetes/clusternet/clusternet.go b/metropolis/node/kubernetes/clusternet/clusternet.go
index 9cf877b..dd5e5df 100644
--- a/metropolis/node/kubernetes/clusternet/clusternet.go
+++ b/metropolis/node/kubernetes/clusternet/clusternet.go
@@ -29,7 +29,7 @@
 	"k8s.io/client-go/tools/cache"
 
 	"source.monogon.dev/go/logging"
-	oclusternet "source.monogon.dev/metropolis/node/core/clusternet"
+	"source.monogon.dev/metropolis/node/core/network/ipam"
 	"source.monogon.dev/osbase/event"
 	"source.monogon.dev/osbase/supervisor"
 )
@@ -37,7 +37,7 @@
 type Service struct {
 	NodeName   string
 	Kubernetes kubernetes.Interface
-	Prefixes   event.Value[*oclusternet.Prefixes]
+	Prefixes   event.Value[*ipam.Prefixes]
 
 	logger logging.Leveled
 }
@@ -50,7 +50,7 @@
 		return nil
 	}
 
-	var prefixes oclusternet.Prefixes
+	var prefixes ipam.Prefixes
 	for _, podNetStr := range newNode.Spec.PodCIDRs {
 		prefix, err := netip.ParsePrefix(podNetStr)
 		if err != nil {