handle RejectedExecutionException in ConcurrentServerRunner

When the Executor rejects an execute request for a client runner,
we summarily close the client socket to avoid a temporary resource
leak.
make dropped connection log messages consistent
avoid an empty catch clause in ConcurrentServerRunner.run