moved run task into its own event as it needs to be handled slightly
differently when it comes to promises (nightmare!)
calling stop on a task now returns the result passed into the callback
bumped version