Implement the ability to commit changes as new versions. Next: Ability to copy and overwrite files when switching branches