Add producer StopWithDrain (#45)
Add producer StopWithDrain (#45)

The new producer StopWithDrain method stops a producer, but allows
producer requests that have been queued from Publish / PublishTo calls
to be sent to nsq. No new messages may be published after the method
shuts down the internal requests queue.

Because of the `select` ordering for request handling in the producer,
this new method cannot guarantee processing of responses that return
from nsq for messages that are drained.
segmentio/nsq-go