doco
whitespace
Just use a new array list.
Even considered hosts might receive empty work slots in the heap loop.

By making executor count a constraint on how many work slots that may be added, we avoid empty work slots altogether.
Modify heap order to account for remaining *useful* slots.
Introduce a lazy-initializing list of maps to simplify things.
Dry up the heap loop a touch.