Upgrade boot to RC3

- Updated version to 1.0.0.RC3
- Fixed the package name changes
- Change SpringApplicationEnvironmentAvailableEvent to ApplicationEnvironmentPreparedEvent
XD-1090: Shell job exec restart
XD-1300: Add more job module options classes

Add new options classes for modules which don't already have them, and use primitive booleans where appropriate.

Removed reference to default
XD-1315: Use a pojo for file module metadata
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
XD-1309: Skip option validation when doing completion
XD-1122 Add mgmtPort option

Adds an option to set the port on which Spring Boot's management
server listens. 

- Added `mgmtPort` as a CommonOption (for both admin/container)
- The management port can also be set via `XD_MGMT_PORT` as an environment
  variable property
- By default, the mangement port uses admin/container server port in
  admin/container servers respectively.
XD-1021,1037,1277,1039 Fix composed module options

Implement module options advertising and dispatching for composed
modules.
XD-647 Refactor message converters to implement MessageConverter interface

XD-647 merged ModuleTypeConversionPlugin

XD-647 Http source emits byte[] by default

XD-647 General cleanup, added custom converters hook

XD-647 Revert to http source emitting String by default, and Javadoc

Fix generics warnings

Bump groovy version
@Ignore a failing test for now pending investigation
XD-1321 XD-1322 Creating shell scripts and support classes to start XD on YARN

- Adding new spring-xd-<version>-yarn.zip file containing spring-xd-yarn zip and
  client and appmaster jars along with customization files and scripts

- Adding xd-admin and xd-container scripts for YARN

- Adding YARN Client and Appmaster implementations

- Removing directory paths from xd-yarn zip distribution

- New application.properties file can be used to override config options
XD-1291 Graceful container shutdown

- When the container shuts down, there are following application
contexts:
 - (1) ParentConfiguration global context
 - (2) LauncherApplication context whose parent is (1)
 - (3) Common context (from module common)
 - (4) Deployed modules contexts whose parent is (3)

With Boot RC3, the shutdown hook is registered only on (1)
and all the child contexts are subsequently closed using
ParentContextCloserApplicationListener.

This PR addresses the order in which the modules contexts are
closed by making sure the consumer modules (sink/processor) get
closed before the producer modules (if all are deployed inside
a same container).

- ModuleDeployer, during its destroy() will only publish the module
undeployment events as the modules contexts and the common context are closed
appropriately before the ModuleDeployer is destroyed.
XD-1291 Change precedence order

- The producer modules context should be closed before
the consumer modules context.
XD-647: Enable text/plain conversion on byte[] payload
Fix generics warning
XD-1351 Replace Plugin.preprocessSharedContext

- replaced Plugin.preprocessSharedContext with ApplicationListener

- removed duplicate codec bean

- module-common.xml comment and dup method in TestStreamPlugin