I get that there's more than request-response. Why not use Websockets instead? What do you plan to do if your mobile users want a browser-based experience?
You get what many people dont! When we will need a webapp we would write a WebSocket protocol then. Why write stuff you don't need too? TCP with json was just surprisingly simple and effective for our realtime twitter+move app.
Websockets are the natural choice when/if we bring Filmgrain to the browser. I actually think Websockets are really exciting, but for a mobile app just going straight socket made more sense.