simplify the event emitter

This change simplify the event listener code by sending wildcards and patterns
subscribed all at once. There is no real reason to send them in a different
loop also the way we trigger thevent loop using an async worker may be a
problem when both a wildcard and a simple event were subcscribed.
make sure we trigger all events.

following @saghul idea, start the spinner, pass it a dummy callback (lambda h:
None) and stop it at the end of _send. This will prevent the loop from
blocking for i/o on a given iteration if there are pending events, that is,
until the prepare handle is run. Als unref the prepare handle to not block the
loop.
simplify the way we retrieve the vents

don't reassing the queue event. While I'm here log exception callbacks.
Merge pull request #23 from benoitc/fix/events

simplify the event emitter