Refactor ControlPoints and Magnets to support any number and position of ControlPoints and Magnets on a WiresShape