Mainloop: Fix poll loop.

We need to actually add new clients to the pollfds, otherwise
we'll never see data from them in our main poll() loop.

Also poll returning 0 means a timeout, which shouldn't terminate
the daemon. Instead, we just go again. This 5sec timout will
be later to handle dead connections and to clean up.

We might be able to accept() a new connection and immediately
service data from that socket, instead of doing a poll() on
that socket first, not sure if that's going to make a big
performance difference or not yet. For now, just accept()
and return to polling, which should be safe.