updating task cancel api to remove old dispatch coordinator functionality and adding ability to cancel spawned tasks
minor fix for the case when spawned_tasks field is None
moving spawned tasks cancellation logic to async/tasks.py for recursive cancellation
update to a unit test to test cascading spawned tasks
added PulpCodedException for already completed task and also removing cascade task cancel
using atomic find_and_modify instead of update_task_status
changing the return code for a PulpCodedException
adding a test for not overwriting the state after the task is finished
removing unused TaskCompleteException
Moving exception raising code to the tasks.cancel from the dispatch controller
updating dispatch controller unit tests to use pulp.devel.unit.PulpWebservicesTests to bypass the WSGI stack
Merge pull request #795 from pulp/skarmark-task-cancel

updating task cancel api to remove old dispatch coordinator functionality, adding exception handling and unit tests