Update javadoc of RetryListener interface to be more specific to its actual usage
BATCH-2146: Renamed JSR specific artifacts to be prefixed so they are easily identifiable
Call StepSynchronizationManager.close() in before method
BATCH-2078: Close application contexts as batch jobs finish
BATCH-2178: allow injection of custom JdbcOperations implementation in
JobRepositoryFactoryBean and JobExplorerFactoryBean
add jdbc-operations attribute to <batch:job-repository>
BATCH-1998: Create JSR CI Build

* Added new module "spring-batch-jsr352-tck" containing a maven configuration
  to run the TCK tests.
* Added new profile "jsr-352-tck" to run the TCK tests
* The TCK build relys on the following environment variables being set:
  * JSR_352_TCK_LIBS = the directory used to store libraries used during the TCK execution
  * JSR_352_TCK_HOME = the directory containing the pristine version of the JSR-352 TCK
  * JSR_352_BATCH_IMPL_CLASSES = the : seperated jars to be used and passed to the
    batch.impl.classes property of $JSR_352_TCK_HOME/jsr352-tck.properties. These are
    typically the paths to the JAR's located in $JSR_352_TCK_LIBS

TCK tests can be invoked by activating the jsr-352-tck profile.

At this time, if any errors occur while invoking the TCK ant build, the maven build will
continue. See https://java.net/bugzilla/show_bug.cgi?id=5833 for more details. A work around
is to modify:

$JSR_352_TCK_HOME/build.xml adding the following after </testng> and before </target>

<fail if="tests.failed" message="JSR-352 TCK TESTS FAILED"/>
update ant-contrib version, used by jsr ant run