Added support for second signature of .on and fixed bugs relating to

strings of multiple events and streamlined code a bit.
I purposely called noop to be explicit