HPCC-10899 - Fix spilt results records getting lost

If a LOOP or GRAPH result, spilt after it had started to be read,
rows were lost.
Also, improve efficiency of spill write callback mechanism.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>