(Ops, hice un comentario por ahi pero creo que se perdio... ? )
Quería hacer este pequeño aporte: el uso de hashbangs para implementar la navegación ajax es algo que se está dejando de usar por muchos sitios.
La razón es que está siendo reemplazado por history.pushState() en los browsers que lo soportan, que cada vez son más.
esa funcion permite agregar entradas a la historia de navegación programaticamente (hacer como si se navegó a una nueva url sin navegar realmente).
puede ser que twitter todavía tenga hashbangs, pero facebook veo que ya lo esta usando (fijense que no hay más hashbangs).
y algunos como el portal de
github.com decidieron sólo soportar navegación ajax cuando hay soporte para pushState, es un poco más extremo, pero es enormemente más simple! y creo que el soporte para pushState ya es bastante completo en browsers modernos.
pd: en github está publicada (open source) la librería js que usan para este tema (no recuerdo el nombre ahora).
Saludos!