adding versioning support
switching versioning to values. not sure why i implemented the crazy key stuff. must be getting late.
cleaning up versioning