Merged control and menu condition code

The code has been merged, but transference is not fully functioning. Some cleanup is still required.
Is this mutable set going to be used? If not we can remove it.