If bind() fails on EADDRINUSE, keep trying.
Replace the lock file (and wait file) with pid file.

Makes more sense with potentially multiple relay replicas:
the combination of SO_REUSEPORT and busywait fallback.
Since we can now have relay replicas, add pid to the spill filenames.
Catch SIGPIPE (though die), and show send error, if any.