все конечно уже придумано и CVS это уже устарешная система. Но чтобы прикрутить систему контроля версий внутрь программы это непростая задача. И помимо внутреннего кода, требует проработки на уровне UI.