Add versioning mechanism