When you browse repositories on github ( for example https://github.com/mojombo/jekyll/tree/master/bin) it feels like it uses ajax and does not reload the whole page every time. However the url really changes (not just after the # ).
I already found this article where they write about their backend: https://github.com/blog/530-how-we-made-github-fast
But is this really the whole trick?
My pages never feel that fast and I am already using yslow to optimize it.