[SPARK-1186] : Enrich the Spark-Shell Script to offer additional arguments.

Usage: spark-shell [OPTIONS]

OPTIONS:

basic:

    -h  --help              : print this help information.
    -c  --executor-cores    : the maximum number of cores to be used by the spark shell.
    -em --executor-memory   : num[m|g], the memory used by each executor of spark shell.
    -dm --driver-memory     : num[m|g], the memory used by the spark shell and driver.

soon to be deprecated:

    --cores         : please use -c/--executor-cores
    --execmem       : please use -em/--executor-memory
    --drivermem     : please use -dm/--driver-memory


other options:

    -mip --master-ip     : Spark Master IP/Host Address
    -mp  --master-port   : num, Spark Master Port
    -m   --master        : full string that describes the Spark Master.
    -ld  --local-dir     : absolute path to a local directory that will be use for "scratch" space in Spark.
    -dh  --driver-host   : hostname or IP address for the driver to listen on. 
    -dp  --driver-port   : num, port for the driver to listen on.
    -uip --ui-port       : num, port for your application's dashboard, which shows memory and workload data.
    --parallelism        : num, default number of tasks to use across the cluster for distributed shuffle operations when not set by user.
    --locality-wait      : num, number of milliseconds to wait to launch a data-local task before giving up.
    --schedule-fair      : flag, enables FAIR scheduling between jobs submitted to the same SparkContext.
    --max-failures       : num, number of individual task failures before giving up on the job.
    --log-conf           : flag, log the supplied SparkConf as INFO at start of spark context.

e.g.
    spark-shell -m 127.0.0.1 -ld /tmp -dh 127.0.0.1 -dp 4001 -uip 4010 --parallelism 10 --locality-wait 500 --schedule-fair --max-failures 100