kops-controller manages a few node-role node-labels. We
now remove any extra managed labels that land on the node.
This means we will now actively remove the extra node label if we
previously erroneously applied to a control-plane node; previous code
changes stopped applying it.
If we deserialize the yaml, we don't go through the version-conversion
logic. That logic maps from Master -> ControlPlane, so without that
logic we see unexpected values in the "string enums".
We were silently ignoring unknown roles, which makes it hard to know
when our expectations aren't met. It looks like the rename of the
role from "Master" to "ControlPlane" may have caused some drift
against our expectations also.