Trigger the version diff within the main file (see #5220)
Move all versioning related methods to the `Versions` class
Replace `createInitialVersion()` and `createNewVersion()`
Merge branch 'feature/versions-library' into develop