Судя по описанию, вы хотите сделать не многостраничное, а одностраничное приложение.
1. Стоит заранее знать, какое количество данных, аяксов будет использоваться. Если страницы статичные и не имеют объемной структуры данных, то можно на обычном Jquery, как вы и предположили.
2. Стоит помнить, что jquery код jq коду рознь. Задумывайтесь сразу, насколько удобны ваши конструкции при масштабировании.
3. Кнопки Вперед - Назад это hash-навигация, если страницы статичные, то можно просто вести массив истории.
Всё должно загружаться один раз и работать локально, без обращений к серверу.
Т.е. человек прошел 87 тестов, обновился и все потерял?
По-хорошему, существуют такие штуки как Backbone и Angular, которые хорошо работают с приложениями такого типа.
Но вам я бы предложил создать двумерный массив для навигации (id шаблона + состояние). А потом уже по ходу перекидывать пользователя на нужный шаблон с нужным состоянием.