Consumer: fix possible tight loop
Consumer: fix possible tight loop

In certain cases the `subscriptionManager` and drain loop in `abort` could start
spinning against each other for a non-trivial amount of time, if e.g. a
partition was suspended waiting for the user to consume its buffer. The tight
loop has always been there, it has just tended to be trivially short in normal
operation so nobody noticed.

This is the same issue that the `wait` channel was introduced to solve for the
`subscriptionConsumer` so solve it the same way.

VividCortex/sarama,raisemarketplace/sarama,HelixEducation/sarama,mailgun/sarama,DataDog/sarama,VividCortex/sarama,Shopify/sarama,remerge/sarama,vrischmann/sarama,vrischmann/sarama,raisemarketplace/sarama,Shopify/sarama,mailgun/sarama,remerge/sarama,HelixEducation/sarama,DataDog/sarama