Use a shared thread pool for emulated clients.

Previously, a thread was being created for each emulated client. With the
think time, these threads are idle most of the time. This change avoids
creating a thread for each emulated client and uses a smaller pool (by
default 1/10 of the clients).

The number of clients is still used as the maximum number of threads and
is likely to be used when think/keying time is disabled.