Don't notify EngineJobs of failures more than once

Fixes #97.
Don't notify jobs of failures decoding from cache.

Since we also try to reload the image from source,
we may end up reporting first a failure and then
a success which would leave the request in an
undefined state.