Update: refactor SpawnPopulationBase to work with ISpawnHandler
- got rid of SimulateSubFill, consolidated logic
- changed dump_map default simulation count to 100 (to avoid iteration explosion)
- added more fail reasons
This both reduces code duplication and makes sure we run exactly the same SubFill logic when simulating to generate debug maps
Tests: ran it on 4.5k procgen with dump_map junkpiles 1000 - found why they don't spawn