implemented version file reading and writing