Introduced multi-threaded and single-threaded modes (but also kept multi-process mode too).
The server now defaults to multi-threaded operation (with POSIX threads).
Now using the socket option of SO_REUSEADDR, so it’s easier to restart the server.
Updated the example code.