Fix log timeout on boot

This drastically improves bootup times.

The issues was that the logger() macro would try to write to a socket where
there was no listener yet, thus block until ipc_run() timed out 2 seconds
later. This created an artificially long bootup time.

The test cases need to be tweaked for this because once bootup was faster,
the agent would start up faster than the old one exited, creating a
situation where the new agent failed to start due to the existence of an
older agent.