Merge pull request #16 from structtv/structs

use structs instead of records for GenServers
Generate UUID and store jid in Redis.  Fixes #15.
Merge pull request #17 from akira/uuid

Generate UUID and store jid in Redis.  Fixes #15.
Merge pull request #18 from structtv/logger

add support for logger
Manager timeout handling cleanup + RedisQueue array -> tuple

* Use OTP 'timeout' return values instead of explicitly setting timers
* Vary timeout depending on whether jobs were dequeued or not
* Use tuple instead of array on RedisQueue multiple return value
Merge pull request #24 from akira/timeout_cleanup

Manager timeout handling cleanup + RedisQueue array -> tuple
Record failures, match more of the sidekiq api, switch to poision for json

add timeouts to job recording