Javadoc
Loop until
ExecutorService#awaitTermination finally does return
without an interrupted exception. If we don't do this, then we'll shut
down prematurely. We want to let the executor service clear its task
queue, closing client sockets appropriately.