It used to call `enet_host_service` until all events were consumed, but
that also meant constantly polling the connection leading to potentially
unbounded processing time.
It now only service the connection once, and instead consumes all the
retrieved events via `enet_host_check_events`.
Passing `0` to `enet_host_create` will allow the maximum amount of
channel supported by ENet. For some reasons, `connect_to_host` will
instead only create 1 channel when passed `0`.
This commit normalize the behaviour to always allocate the maximum
allowed channels when passing `0`.