more refactoring of the main VersionedQuerySet class. key functions are done, testing is needed