HPCC-10452 Add timeout handling to Regression Suite.

Add timeout handling for both suite and individual query run to avoid system
hang-up when a test case fails.

There are 3 levels of timeout handling:
- timeout value set up in Regression Suite config file (e.g.: regress.json)
- timeout value in command line parameter (override config value, both valid
  for all test cases)
- timeout value with //timeout tag in individual ECL file (override config
  and CLI value for current test case)

If a test case (workunit) blocked in execution pipeline (long compile, blocked
by server, etc) and timeout occurred, then RS reset the timeout value.
To avoid endless loop there is a maxAttemptCount in regress.json file.

Add more exception handling and logs.

Improve debug logging.

Signed-off-by: Attila Vamos <attila.vamos@gmail.com>
Merge pull request #5191 from AttilaVamos/HPCC-10452-improvement

HPCC-10452 Add timeout handling to Regression Suite.

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>