Horizon[0] was announced yesterday; it's basically an open-source Firebase built on RethinkDB.
RethinkDB doesn't require polling. It's like their #1 feature and differentiator from other non-sql databases.
We use websockets in our realtime platform.
One simple solution is giving each state a defined name, and keeping a socket open from mobile. If the connection is restarted, each side can name their current state, and the delta can also be easily synced.
Later on, changes can be directly transmitted via the socket.
(I am working on something like that currently myself).