Added module autoloader and refactored the manifest parser