add versioning to models
provide changeset methods to the changes array