Several points:

- AFAICS all connections and listeners registered on the selector close themselves in their own `postStop` methods.
  I don't remember whether we already had this discussion, but is it really required that the selector also closes all the channels via its `postStop`?

- Since the selector is the parent of all connections and listeners they will have been already shut down when the selector `postStop` runs, i.e. it shouldn't matter whether we run the clean-up code synchronously (as before) or asynchronously (as with this patch).

- When I call `system.shutdown()`, in which order are the actors and dispatchers stopped? I know the "child actors first" rule, but how do dispatchers fit in the picture? I.e., if I schedule something to a dispatcher in my `postStop`, can I be sure it still gets run before the ActorSystem is shut down?