HPCC-9896 Deploy jar files to HPCC cluster and update classpath

This fix is also applied to HPCC-10211 which is similar to HPCC-9896.

New or updated files:
 1. deploy-java-files.sh.in:
    top level bash script to deploy java files to the cluster and update
    classpath in environment.conf. The script will call cluster_script.py
    to execute the script file concurrently or through run_cluster shell
    function to execute the script sequentially.
    Before transfer file, prompt for user and password.

 2. cluster_script.py:
    execute script file on cluster hosts with threads. It receives user
    inputs for script to run, how many concurrent tasks to run,etc.
    Execute the task and display runtime status and final result.

 3. hpcc/cluster/host.py:
    help python module to handle host information in the cluster.

 4. hpcc/cluster/thread.py:
    implements a thread with charred tasks queue

 5. hpcc/cluster/task.py:
    manage execution of a task

 6. deploy-java-files.exp
    expect code to transfer java files to remote host. The ssh/scp connection
    can be with password or ssh private key file. Put the code in a file will
    avoid exposing password through ps comman  which is the case when embeded
    expect code in shell script.

 7. hpcc_common
    Add run_cluster function in hpcc_common.
    If python not detected call run_cluster to run script sequentially

Required python version 2.6+. If the version is lower it will be treated as
no python installed.

Remove sbin and bin directories after uninstall (postrm)
Merge pull request #5588 from xwang2713/HPCC_9896_2

HPCC-9896 Deploy jar files to HPCC cluster and update classpath

Reviewed-By: Chris Lo <chris.lo@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>