So while using (and being impressed) with my Chromecast, I have found one thing missing in the whole user experience. A remote. And possibly a unified remote. While controlling the cast from the phone is not too bad, trying to pause/resume it from the PC is a right nightmare.
I did some research and digging on how to write a Chromecast app for this purpose. Using the Google Cast API I found it was possible to join the current application (without a session id) and also control it using a RemoteMediaPlayer object. This seems to work great on standard apps written with the release Google Cast SDK. I tried on LocalCast and Cloudcast and I was able to control their streams (maybe they use a standard receiver).
However with other apps like Youtube and Vevo this method does not work. This is a major disappointment to me, since I expect all apps to use the same SDK and standard commands. I believe Youtube has been on its own preview SDK and I am not sure about Vevo, maybe they have a non-standard receiver. Nevertheless I expect all receivers to atleast conform to the same standard media playback commands.