HPCC-9483 Valgrind complains about remotefile's hashtable of endpoints

Because of uninitialized dead space in the SocketEndpoint structure, must
suply hash functions whenever used as the key to a hash table rather than
relying on the default implementation.

Not sure what effect this would have had - probably means that the critsec
designed to prevent multiple simultaneous transactions on the same remote
socket might sometimes have failed to fully protect.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #4486 from richardkchapman/socket-endpoint-hash

HPCC-9483 Valgrind complains about remotefile's hashtable of endpoints

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>