| VersionHook | 
 This class gathers together editors related to handling version storage:
 
     
         VersionEditorProvider
         
             
                 VersionEditor - creates version history, handles
                 checking-in, checking-out and restoring, prevents a
                 checked-in node from being modified,
             
             
                 VersionStorageEditor - validates changes on the
                 version storage,
             
         
     
     
         VersionableCollector - collects all existing versionable
         UUIDs, so assigned histories won't be removed in the next step,
     
     
         OrphanedVersionCleaner - removes all histories that are
         empty and have no longer a parent versionable node. 
 |