on(type, callback, scope, ...args) {
		if (typeof this.events[type] === 'undefined') {
			// Check if there is already event of this type registered
			this.events[type] = []; // If not, create array for it
		}
		this.events[type].push({ scope, callback, args }); // Finally push new event to events array
	}
Adds listener to EventBus
@param {string} type The name of the event to listen for
@param {function} callback Callback to call when event was triggered
@param {object} scope The scope in which the callback shall be executed
@param  {...any} args Any number of args to be passed to the callback