Separated the error management from ModulesManager

- Now errors are managed by event listeners.
- Added a default error listener to provide basic error presentation.