Allow queues to be used as tasks.

This simple addition allows queues to be used as tasks in the .task() and .tasks() methods.
A .series() method is also added to the Queue prototype, to run queues in sequence (see test file).
Use case : nesting queues and splitting complex workflows between multiple queues can improve readability.