Merge pull request #688 from mmb/stderr-output-prefix

Change command error stream prefix to STDERR.
Version bump up - 14.4.0
* Haven't bumped up versions in curl.task.plugin and sample-plugin.descriptorHash plugin XMLs. These will be updated as part of the sample plugin migration to messaged based plugins.
Merge pull request #740 from mdaliejaz/versionBumpUp

Version bump up - 14.4.0
#718 - Introduced TaskExtension which acts as adapter to channel API and Message/json based tasks. ApiBasedTaskExtension handles all requests for old-styled task apis. Yet to implement Messagebased extension methids
#718 - implemented json-based task extension. fixed task-metadata-loader to delegate to appropriate extensions to load and cache the metadata
#718 - extracted out task extension handler for version 1.0. Each handler is registered with the jsonBasedTaskExtension. appropriate handler is invoked based on the version implemented by the plugin
#718 - Changed the json format of task config. passing config, environment vars, working dir and console as part of request to plugin
#718 - Fixed failing tests. modified tests to use mock instead of stub
#718 - PluggableTaskService invokes validate through task extension. Changed json format for validation error
#718 - Created a ConsoleWrapper to be used by json based plugins. ConsoleForJsonBasedPlugin will be passed on in the request instead of the Console directly
#718 - defined taskentension as a bean on agent so we dont have to serialize it across. fixed few bugs for this story
#718 - some refactoring to remove duplicate code for invoking plugins, fixed associated tests
#718 - Plugin is marked invalid if exception occurs during on pluginLoad.
Fixing failing test
#738 Improved exception error message, handled empty validation result, Added check for plugin type
Merge pull request #743 from pshivana/migrate_package_repository_extension

#738 Fixed issues
#718 - Re-implemented the way console logging happens from plugins

Before task run, builder sets the execution context on JobConsoleLogger
Plugin gets hold of the logger through JobConsoleLogger.getConsoleLogger and performs logging operations
On task completion, the context is unset from JobConsoleLogger
#738 updated error message, handled empty message for check connection
Merge pull request #744 from pshivana/migrate_package_repository_extension

#738 updated error message, handled empty message for check connection
#718 - Splitting JobConsoleLogger to avoid setting/unsetting of context from plugin.