Record failures in redis

i think this a good way to store failures, we keep the whole original job. Ive also added functionality to find jobs and errors in queues. This will be useful for finding and manually retrying from the web ui. Next we should look at how to auto-retry jobs.

any thoughts or feed back is welcome as always.