(#1768) - changes as event emitter and in it's own module