XD-1156 Refactor Plugins

- Created AbstractPlugin with no-op/common
implementing methods and have other concrete Plugins
extend this
- Removed unused methods in JobPlugin
- In StreamPlugin, use ChannelInterceptorAware type check when adding tap
to the producer
XD-1304: Add job instance display command
Fix Job module options

- Changed the getter method name for the property
"restartable" in JdbcHdfsOptionsMetadata to "getRestartable"
so that Metadata BeanWrapper's PropertyDescriptor sets
the read method name correctly.

- Initialize `tableName`, `columns` and `sql` properties with empty text
so that their placeholders in jdbchdfs.xml get set. This doesn't do any
harm as NamedColumnJdbcItemReader checks it again.

- Changed the return type of the boolean getter methods to primitive type
boolean in some of the job module options metadata pojos.
XD-1215 DistributedJobService to return valid Job

- Persist step names into distributed job locator
registry table JOB_REGISTRY_STEP_NAMES so that
DistributedJobService can find step names from the
XD Admin server
- Check and add jobParameterIncrementer before launching job
- Renamed BatchJobLocator to DistributedJobLocator
- Added tests
- Added guarded check to SingleNodeStreamDeploymentIntegrationTests
to make sure the correct test message bus is used in tests. (Though
this is not relevant to the PR)

Fix typo

- Also fixed the license header file in eclipse metadata
XD-1332 XD Int Test pauses should be configurable

Exposed properties in the build.gradle

Had to add support for relative directories for the CI Build

Updated documentation

Updated Documentation