Use separate event loop groups

By default there's 2 * processors event loops and they're assigned in a
round-robin fashion within a group, so the current behaviour was very
much OK.

Still, this goes in the direction of clear-cut isolation between
listeners, which we feel strongly about.

Closes #54.