More diverse threads
Memory footprint checking and thread reduction

The numbers are currently fixed not to exceed 24GB of RAM (hopefully)
when running.
A bit more conservative memory freeing strategy for MT