bpo-30675: Fix multiprocessing code in regrtest (#2220)
* Rewrite code to pass slaveargs from the master process to worker
processes: reuse the same code of the Python master branch
* Move code to initialize tests in a new setup_tests() function,
similar change was done in the master branch
* In a worker process, call setup_tests() with the namespace built
from slaveargs to initialize correctly tests
Before this change, warm_caches() was not called in worker processes
because the setup was done before rebuilding the namespace from
slaveargs. As a consequence, the huntrleaks feature was unstable. For
example, test_zipfile reported randomly false positive on reference
leaks.