Thanks J. My worry with CRUD is a constant polling that would be required and it absolutely kills the battery on mobile handsets. Correct me if I am wrong.
The CRUD layer wouldn't be used for live updates. You'd use a separate messaging system for that. My point is that you should build the 100% reliable CRUD layer first, then add on a messaging layer for realtime push. This, as opposed to starting with the messaging layer, and then going in circles trying to patch all the ways it can fail.