changed Monad ret to unit
changed Monad ret to unit
added autoCurried "on" and "emit" functions and an Emitter class