Tests fix - initial work

Hi @manast - I would like to add a `timeout` and a `retries` parameter to `Queue##add(data, opts)`.
I have noticed the build is failing on master - this could be due to the upgrade to Bluebird 2.x
I have taken a look at the source and noticed some places where the use promises could be simplified so I thought I would issue this PR. My idea would be to do something similar for `job.js` and add a few more tests before moving on to implementing the features I mentioned.
What are your thoughts? 
Apologies for indenting this (and other bits in this PR) with 4 spaces instead of two. My editor has that as default. Would you consider adding an [`.editorconfig`](http://editorconfig.org/)? I could draft one. I found that jshint also helps a lot in projects. Happy to submit a `.jshintrc` for review as well.