[Bug]: history is sometimes not flushed on changes
### What happened?

I'm experiencing an issue where the `onHistory` callback to `.listen` on the store is sometimes not called on changes. After some debugging I've found that this seems to be caused by the store being disposed before the historyReactor function has run for the first time. This means that it will never register the signal parents and is therefore not triggered again when signals change.

The Store is disposed when the Editor is recreated, which seems to happen because we're using react strict mode. The problem is that the historyReactor is only set up when the store is created, and cancelled when it's disposed. But when a new Editor is created, the historyReactor is not set up again to ensure it has at least run once to register the signal parents.

The reason that the Editor and Store can be disposed before the historyReactor has run is that it uses throttleToNextFrame, and that uses requestAnimationFrame to schedule the run. So the Editor and Store is disposed after requestAnimationFrame is called, but before the callback to requestAnimationFrame is called.

### How can we reproduce the bug?

Since this depends on the timing of requestAnimationFrame it's hard to give an example that reliably reproduces this. However, you can likely cause it to happen by using react strict mode and adding some delay to the requestAnimationFrame callback in throttle.ts.

### What browsers are you seeing the problem on?

Chrome

### Where did this happen?

The developer package

### Contact Details

_No response_

### Code of Conduct

- [X] I agree to follow this project's Code of Conduct