HPCC-9491 - Ensure lock checked in multiple cluster case

If a logical file had multiple Cluster's, the locking
mechanism was bypassed. Consequently, the removal of a file
on one of the clusters that was locked by others, would still
succeed, leaving the lock dangline.

Related issues when fixing this:
* Clear up dfuplus/dfu's use of 'nodelete' which used to remove
the logical file and leave the physicals orphaned, but hasn't
worked for some time.

* There were also issues with fetch a IFileDescriptor for a
single cluster - it left the default directory from old/removed
clusters behind - which cause all file parts to be incorrectly
constructed.

* Deleting physical files for a logical file that existed on
two clusters on the same physical nodes, cause all physical
parts on both to be deleted, when 1 was requested.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
Changes following review

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

HPCC-9491 - Ensure lock checked in multiple cluster case

Reviewed-By: Gavin Halliday <gavin.halliday@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>