Add support for batched message send

Also improve on the logic for stopping the async Processor instance.
Ensure that unsend messages are sent before it is stopped.