Task: preflight takes TaskActionClient instead of TaskToolbox
IndexGeneratorTask: Fix serialization
Merger: Replace TaskCallback with ListenableFuture<TaskStatus>
TaskMasterLifecycle: Less noisy exit when interrupted
Task: Fix comments in preamble
TaskAction:
- Add isAudited
- Generally straighten out Jackson annotations
Ability to run tasks in separate JVMs, and cancel tasks.

- ForkingTaskRunner spawns new JVMs for each task
- Added ExecutorMain, ExecutorNode to be the spawned JVM
- LocalTaskRunner renamed ExecutorServiceTaskRunner
- Add shutdown method to Task and TaskRunner
intiial commit for stop task
Merge branch 'forking-task-runner' into stop_task

Conflicts:
	merger/src/main/java/com/metamx/druid/merger/common/task/AbstractTask.java
	merger/src/main/java/com/metamx/druid/merger/common/task/Task.java
	merger/src/main/java/com/metamx/druid/merger/coordinator/http/IndexerCoordinatorResource.java
fix nodes not able to start
fix more startup problems
TaskConsumer: Less complainy when interrupted
ExecutorMain: Shut down when our parent disappears
more logging
ForkingTaskRunner: Totally ridiculous graceful shutdown mechanism
RealtimeIndexTask: Better handle early shutdowns
RealtimeIndexTask: Close firehose after finishing plumbing job
fix shutdown problem
more logs
GracefulShutdownFirehose: MutableBoolean -> AtomicBoolean