Move worker wait to before the sendBatch call

This prevents the queue from being quickly drained and many sendBatch
goroutines from holding all the data in memory.
Simplifications
Bump collect workers to 4