Increased performance and improved error handling.
Work on custom event emitter.