refactor(client) mv Events.add to listeners