rework of ControlBase, split out into StageHandler