Initialize Worker.client with Queue redis client for reuse
Reuse redis connection from queue on job creation
Handle errors emitted by redis by listening on error event to avoid crashes

http://nodejs.org/api/events.html#events_class_events_eventemitter
When an EventEmitter instance experiences an error, the typical action is to emit an 'error' event. Error events are treated as a special case in node. If there is no listener for it, then the default action is to print a stack trace and exit the program.
Redis emits errors in several places.
update job toggles & log selection issues

Right now you can't really select and copy past your job log.
The job view toggle on click and log text is refreshed every 3sec
which make it hard to select anything..

So this is a quick fix to:
- restraint toggle to the content div
- Refresh log when text changes only
Merge branch 'patch-1' of https://github.com/dandv/kue into develop
Merge branch 'handle-redis-emitted-errors' of https://github.com/clickstream/kue into develop
Merge branch 'reuse-redis-client' of https://github.com/clickstream/kue into develop
Unset singleton on shutdown
Removes console.log
Initial test for singleton unset
Adds unsubscribe export for shutdown
Shutdown now cleans up Queue properties
Tests are more specific now
Moves kue create/shutdown into before/after hooks
Clears promoter earlier, guards against late event emit
Guards against event emit after shutdown
Small improvements to test.js

* Startup/shutdown for each test
* Retry test runs more quickly and checks a few additional conditions
Use Job.client instead of redis.createClient in class level methods
add 'failed attempt' listeners in shutdown
Use Job.client instead of redis.createClient in class level methods