Use an async.queue to handle cleanup