CMS-2191 Design for Module system.
Renamed ModuleVersion to ModuleKey, and Version to ModuleVersion.