deleting the running state in case of error

When the done callback is called with an error, the work is retried in 50ms, but the retry fails because `running[hash]` exists. Resetting that state enables the job to be run again.