gives a path to the next version of a file and automatically archives the old version.
part of sph-lib
optionally depends on the "diff" and "patch" utilities for storing incremental changes.
restore old versions
can use diff/patch files for previous versions for text files
limit the number of past versions to keep
size limit option to exclude big files from creating multiple versions
version identifiers are monotonically increasing integers in hexadecimal
(sph filesystem versioning)