Adds max worker capacity of 500 to the worker pool,
and an automatic shutdown of idle workers.
Messages that would cause the capacity to be exceeded,
are deferred.
Additionally, ensures that the same worker
is not spawned by two tasks at the same time.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com>