Cancel in-progress connection attempts [fixes #58]

This fixes a problem where we wouldn't close connections if they weren't fully open. If the connection attempt was still in progress when we requested a shutdown, the connection attempt might complete and never shut down, which could lead hangs when shutting down a `PushManager` without a timeout.