Add drain-before-shutdown behavior (fixes #24)

This changes the `PushManager`'s shutdown behavior to drain the internal retry queue before gracefully closing connections.