changed SyncMediator.push to use more robust error handling flow w/promises