times measures!
- Runtime.next => next function holds the state of the run timeline
- ctx (at Runtime.next => next) should be a snapshot, not confident about performance at the moment with this, the context of the handle function that gets called is merge({}, ctx) so I should think of a better way