rework the signal/slot system to be faster and easier (preparation for GUI changes)