In reply to Chuck.

There are also situations in which this is 100% necessary. Sometimes it's impossible to do things any other way.

This post has come up at a particular pertinent time for me, as I'm currently writing a theme which needs to display a music player at the bottom of the page, and the music needs to seamlessly keep working between pages. I can't do that if the pages aren't loaded directly via JS. Forcing page reloads would cause the audio to break up mid song.