Setup the Gcm and Apns adapters to reuse their ServiceClient if one has been opened

Fixes #22 

I don't know that this actually works, as I'm not in a position to test it.  In theory it's all makes sense: If the adapter has already opened a connection, then just reuse it!  We never seem to close these connections anywhere, but we make them fresh each time push is called, which is rather unnecessary.