[Sprint:37] XD-1791 Add Spark job

 - Add `SparkTasklet` that can run spark application in `client` mode
     - In client mode, the spark job gets executed within container as a job module
 - Add module options to provide
     - master: to point to spark master
     - mainClass: the main class for the spark application
     - appJar: the bundled jar for the application and its dependencies
     - programArgs: the comma separated program arguments for the main class
Added a fix to avoid this scenario: 2680b75

- Fail fast job when the app main class can't be loaded
   - From the `appJar` provided, make sure the spark application
    main class can be loaded
   - This will avoid `SparkSubmit` to call `System.exit()` upon
    `ClassNotFoundException`