HPCC-12534 Prevent >1 file delete from deadlocking each other

When DFS delete is called with the default inifinite timeout, it
would 1st lock the file for read then try to detach it which
involves gaining an exclusive lock.
If 2 managed to get a read lock ahead of their attempt to get a
write lock, they would deadlock each other indefinitely.

Add a timeout, random sleep and retry mechanism.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
Merge pull request #6610 from jakesmith/hpcc-12534

HPCC-12534 Prevent >1 file delete from deadlocking each other

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>