Initial commit for job killing.
Properly handle job failure when the job gets killed.
Added a submitJob interface that returns a Future of the result.
Allow SparkContext.submitJob to submit a job for only a subset of the partitions.
Added a hack to kill all active jobs in SparkContext.
Fixed a bug for zero partition in JobWaiter.
Made task killing work for standalone cluster schedulers.
More logging changes (task killing for local cluster doesn't work yet).
Added task killing iterator to RDDs that take inputs.
Added comment to InterruptibleIterator.
Wrap around cached data to InterruptibleIterator.
Made output of CoGroup and aggregations interruptible.
Merge remote-tracking branch 'origin' into kill

Conflicts:
	core/src/main/scala/org/apache/spark/scheduler/TaskScheduler.scala
	core/src/main/scala/org/apache/spark/scheduler/cluster/ClusterTaskSetManager.scala
	core/src/test/scala/org/apache/spark/scheduler/DAGSchedulerSuite.scala
Merge branch 'master' into kill

Conflicts:
	core/src/main/scala/org/apache/spark/TaskEndReason.scala
	core/src/main/scala/org/apache/spark/executor/Executor.scala
	core/src/main/scala/org/apache/spark/scheduler/cluster/ClusterTaskSetManager.scala
	core/src/test/scala/org/apache/spark/scheduler/DAGSchedulerSuite.scala
- Created AsyncRDDActions.
- Make FutureJob a Scala Future instead of Java Future.
Added countAsync and various unit tests for async actions.
Implemented FutureAction, FutureJob, CancellablePromise.

Implemented more unit tests for async actions.
Merge branch 'master' of github.com:apache/incubator-spark into kill

Conflicts:
	core/src/main/scala/org/apache/spark/CacheManager.scala
	core/src/main/scala/org/apache/spark/rdd/HadoopRDD.scala
	core/src/main/scala/org/apache/spark/scheduler/DAGSchedulerSource.scala
Put the job cancellation handling into the dagscheduler's main event loop.
Fixed the deadlock situation in multi-job actions and added more unit tests.