Fixed reporting whether job failed/was cancelled: Cancelling by user was setting exception string to "Cancelled by user", changed it to null as exception==null is used as a flag distinguishing jobs that were cancelled by user from the failed ones (those should have exception string set).