HUGE REFACTORING, EVENT BUS, some new features and tests