Make it easier to use custom job class

These patches make using custom job classes a bit easier. Previously, to use custom Job classes you need to subclass both `Queue` and `Worker` as such:
```python
class MyQueue(Queue):
    job_class = MyJob


class MyWorker(Worker):
    job_class = MyJob
```

Now you only need to define a custom `Job` class and use it as such:
```python
queue = Queue(job_class='path.to.my.Job')
```

And:
```python
rqworker --job-class='path.to.my.Job'
```