disposeModule(module) {
    if (!module) return;

    this.modules.splice(this.modules.indexOf(module), 1);

    if (module.dispose) module.dispose.bind(this)(module);

    return module;
  }
@method disposeModule
@instance
@description Disposes of the given module
@param {Object} module the module to dispose
@return {Module} Returns module that was removed.
@memberof module:core.ModuleSystem