Instead of simply stopping execution, it should simply reset the circuit to the state it was in before execution started. There should also be another pause component which simply pauses execution, but most important of all, the halt component's behaviour should be changed.