Don't stop the thread pool if it wasn't started
We don't need to know about virtual modules being loaded
Expose memory_report in mainconfig
Note when we clean up requests on exit

So we can tell what's going on.  But only do this when using -M,
so that normal exits don't have 100's of "cleaning up" messages
On exit, do the following:

mark all requests as STOP.  Clean up ones which are stopped.

If we have child threads
	wait for them all to exit
	if we want a memory report, walk the requests again

The second pass thru walking the requests should clean up all
requests which were running in a child thread