DodoApp: Abstract away service definition

TODO(gio): There seems to be a performance degradation evaluating cue files.

Change-Id: Ib157dfaa1c108f06f3026032e8fad79c06f42d3a
diff --git a/core/installer/status/instance.go b/core/installer/status/instance.go
index c88e5e5..9ad2ff0 100644
--- a/core/installer/status/instance.go
+++ b/core/installer/status/instance.go
@@ -93,6 +93,13 @@
 			s = mergeStatus(status, s)
 		}
 	}
+	for _, i := range out.Services {
+		if s, err := m.monitor(namespace, DodoResource{"service", i.Name}, i, ret); err != nil {
+			return StatusNoStatus, err
+		} else {
+			s = mergeStatus(status, s)
+		}
+	}
 	ret[resource] = status
 	return status, nil
 }
@@ -116,6 +123,7 @@
 	PostgreSQL map[string]ResourceOut     `json:"postgresql"`
 	MongoDB    map[string]ResourceOut     `json:"mongodb"`
 	Ingress    map[string]resourceIngress `json:"ingress"`
+	Services   map[string]ResourceOut     `json:"services"`
 	Helm       map[string]resourceHelm    `json:"helmR"`
 }