Improve EventEmitter error handling
Use EventEmitter for utils
CommonJS module export