undo experiments: actually write at leat one memchunck per ID.
Checked that before, but missed the fact that the flush was done after a whole ID type process in the main saving loop, now we actually do it after every ID when using mem undo file saving.
Besides fixing the stupid issue with lots of unchanged IDs being detected as changed when reading back the undo step, this should also help reduce undo memory usage in some cases (although I could not detect that with some quick test...).
Undo experiments: proof-of-concept of reusable depsgraph across undo steps.
This is still very sketchy, but seems to work in basic cases. useless currently, though, as objects are always changed still currently in undo steps...