For implementation of the compute/commit extension: either we need
Repeat: 1. S = all events that have identical time taken from the event list head. 2. Dispatch all of S (this is the compute phase). 3. Commit pending values to current values.
When we repeat the above loop, if there are any zero-delay models, the value of tnow may not advance: hence a delta cycle.