HPCC-12409 Pathological distribute slowdown fix

Prevent sender queing partial buckets if writers already actively
working on buckets to same target.
Also allow multiple write handler threads to work on the same
target, this allows the serialization/compression (and potentially
dedupping) to occur in parallel even if to same writer.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
I have now combined them, I will leave as a separate commit. It introduces several targets.item(n)-> calls.
but overall it's tidier..

Do your new array implementations, implement operator[] anywhere ?