function EventEmitter() {
    this._events = {};
}

EventEmitter.prototype.on = function(type, listener) {
    this._events[type] = this._events[type] || [];
    this._events[type].push(listener);
};

EventEmitter.prototype.emit = function(type) {
    if (this._events[type]) {
        this._events[type].forEach(function(listener) {
            listener();
        });
    }
};

EventEmitter.prototype.removeListener = function(type, listener) {
    if (this._events[type]) {
        this._events[type].splice(this._events[type].indexOf(listener), 1);
    }
};