Allow more gracefull shutdown of wsgi server

Currently, if the listening socket is closed the
wsgi.server will go into an infinite loop.

Add a 'server_running' flag which can be set to
tell the server to exit. This allows, for example,
a signal handler to initiate a gracefull shutdown
(complete existing requests then exit).
Now we must have `pool.waitall()` at the end of this function to synchronize with all currently running request handlers.