This PR is a rebased version of PR #388.
PR#388 was old and many changes occurred in QuISP (especially the rule engine), I created a new branch and a new PR.
What I did in this PR
Resolved conflicts
Adapted several parts of the code to match the current architecture
Bug fixes
Remaining tasks
[x] Deal with hacked functions in RuntimeCallback
[x] Pass all unit tests
RealTimeController
ActionExecutionTest.Tomography
[x] Run a simulation test (check whether it produces the same outputs as what we were obtaining before)
This PR is a rebased version of PR #388. PR#388 was old and many changes occurred in QuISP (especially the rule engine), I created a new branch and a new PR. What I did in this PR
Remaining tasks
This change is