I own a few headless centos servers running kvm. Vnc-server is probably easiest to setup to access the server's desktop. Or use ssh if you don't want a gui desktop on the server.
I use the ultravnc viewer on my windows PC to access centos.
Linux vm guests can run vnc as well, and windows vm guests have remote desktop, of course.
SPICE is a new way to access guests, but I haven't figured out how to use it yet...