[FIXED JENKINS-24095] Ensure only numExecutors exist when reducing

When reducing the number of executors from M to N, previously it'd
kill all idle executors, and then create executors 0...N-1 unless
they already exist (busy executors).

This can lead to the situation where e.g. executor #5 is busy and
retained, and when setting the number of executors to 3, 0...2 are
created, resulting temporarily having 4 executors.

This change prevents #2 from being created in the example. When #4
is finished, it'll be killed anyway and a new executor #2 created,
so after some time the executor indexes are cleaned up matching
expectations.
Merge pull request #1353 from daniel-beck/JENKINS-24095

[FIXED JENKINS-24095] Ensure only numExecutors exist when reducing