Added a replace() method to the StateRegistry and fixed has().
Added a ModuleDefinition class.
Split the Module and SelfInitModule classes into separate files.
Docblocks and minor refactoring.
Construct the Services upon initialization.
Refactoring Assets.
Refactoring the ModuleManager - made it use StateRegistries instead.