Reimplement rewind! to only store diffs