Плавное перемещение через css3, а остальное:
при клике на любой пункт этому пункту присваиваете класс active. И родителю (div class navigation) присваиваете active.
Для детей дива с классом navigation active margin-left ставите больше, чем он был у детей дива с классом navigation, а для элемента с классом active меньше.
Соответственно, для возврата в начальное состояние убираете все классы active у элементов, что-нить типа $('.active').each($(this).removeClass('active'))
Ну и соответственно делаете все что хотите, помимо margin можно и картинки скрывать и расцвечивать как хотите.
Не хочется писать за Вас, задача в общем-то тривиальная.