allow 1 worker, fix race condition

There's a race condition between using the two queues:
```
queues operate independently and do not guarantee ordering between
them. a cleaner way might be to find a way to use one queue, but this
works.
```

I was using `.task_done()` on the `input_queue` to track things being added to `output_queue`, since queues operate independently this was a race condition that resulted in features being omitted from the final results (as I was using `not output_queue.empty()` instead of looping `len(features_files)` times.