adding ui for versions, switching between versions, autosaving functions