Сайт без перезагрузки страницы — шаг вперед?
history api ( habrahabr.ru/post/123106 ) для смены url , или опираясь на location.hash (aka что-то вроде site.ru/#trololo).
А насчет одного html документа - это по желанию, создавайте хоть 100500, и насчет body тоже по желанию, то есть можно и конкретный div менять, а не полностью body
2. игры с window.location.hash 