async.queue() can lose concurrency after .pause() / .resume()

Concurrency is reduced by each task that finishes while paused. If all tasks complete (nothing is running when `.resume()` is called), then concurrency drops to 1.  This also affects `priorityQueue()` but the fix for both cases is in `queue()`.

See included test `queue pause with concurrency` that fails on v0.9.0.