SimplePush: Refactor to use a connect callback to simplify API and elliminate race conditions