private static boolean nodeIsDown(ClusterState clusterState, NodeInfo nodeInfo) {
        return clusterState.getNodeState(nodeInfo.getNode()).getState() == DOWN;
    }
Returns an optional Result, where return value is:
- No wanted state for other nodes, return Optional.empty
- Wanted state for nodes/groups are not UP:
- if less than maxNumberOfGroupsAllowedToBeDown: return Optional.of(allowed)
     else: if node is in group with nodes already down: return Optional.of(allowed), else Optional.of(disallowed)
clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeStateChangeChecker.java