cloud/shepherd/equinix: split out control loop logic

This is in preparation for implementing the recoverer/rebooter inside
the shepherd.

In the future this will likely be split away from from the shepherd and
end up as a generic bmdb library. But let's first wait for concrete
usages outside of the shepherd component.

Change-Id: I69b9a2e913dcefa2c6558e271b6853285c6120b3
Reviewed-on: https://review.monogon.dev/c/monogon/+/1559
Tested-by: Jenkins CI
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
diff --git a/cloud/shepherd/equinix/manager/BUILD.bazel b/cloud/shepherd/equinix/manager/BUILD.bazel
index 2c702fe..d6554e0 100644
--- a/cloud/shepherd/equinix/manager/BUILD.bazel
+++ b/cloud/shepherd/equinix/manager/BUILD.bazel
@@ -3,6 +3,7 @@
 go_library(
     name = "manager",
     srcs = [
+        "control_loop.go",
         "initializer.go",
         "manager.go",
         "provisioner.go",