Есть одна крутая платформа GSAP, с помощью нее можно анимировать что угодно и не сложно это все. Вот
пример реализации на русском. В кратком содержании. Далее применяется технология
HTML5 History Api.
Ну а дальше дело рук, нужно просчитать действия анимации и по ее завершению заменять история браузера. Ну а страницу соответственно подгружать или сразу при загрузки всей страницы или перед началом анимации через ajax.