Add tests on the order of callbacks.

Callbacks should be invoked in the order they were attached, independent of their type.
Add promise removal tests.
Add once promise tests.
Satisfy all tests.

Instead of dividing listeners based on the type of listener, adapt all to have a uniform interface.
Clean up unused functions.
Clean up unnecessary join functions.
Remove unused argument in addCallback.
Update README.md.

Attempt to clarify wild card listeners, and add examples related to short circuiting.