¿Cómo indexar páginas dinámicas a google usando el método pushstate html5?

Estoy construyendo un sitio web totalmente equipado con jquery, por lo que estoy cargando dinámicamente todas las páginas utilizando ajax para lograr transiciones extravagantes entre las páginas y maximizar la experiencia del usuario. Aquí está mi código javascript:

$(function() {

    var path = _.compact(location.pathname.split("/"));
    if(path.length<2){
        path = 'home' 
    }else{
        path = path[path.length-1];
    }
    activepage = path;

    $('.nav a').click(function(e) {
        href = $(this).attr("href");            
        loadContent(href);      
        // HISTORY.PUSHSTATE
        window.history.pushState('', 'New URL: '+href, href);   
        e.preventDefault();                     
    });

    // THIS EVENT MAKES SURE THAT THE BACK/FORWARD BUTTONS WORK AS WELL
    window.onpopstate = function(event) {
        var path = _.compact(location.pathname.split("/"));
        if(path.length<2){
            path = 'home' 
        }else{
            path = path[path.length-1];
        }           
        loadContent(path);
    };

});



function loadContent(url){  
        // USES JQUERY TO LOAD THE CONTENT
        var adresa = absurl + "ajax/get_content";       
        $.ajax({
          url: adresa,
          contentType: 'application/json',
          data: { url: url },
          success: function(data) {
            switch(url)
            {
                case "projects": $.projects({ data : data }); $.projects.init();
                break;
                case "home": $.homePage({ data : data }); $.homePage.init();
                break;
                default: console.log("nista");
            }
          }
        }); 
}

La función Ajax devuelve todos los datos necesarios para compilar páginas en formato json, luego inicializo mi complemento personalizado que construye la página usando esos datos json.

Todo eso funciona perfectamente bien como se puede ver en esteEjemplo vivo, incluyendo el historial del navegador (atrás y adelante). Pero aquí está mi problema ... Cuando la página está completamente cargada, el contenedor principal permanece vacío cuando miro la fuente de la página. También está vacío cuando intento recuperar la página como google bot y estoy bastante seguro de que estos dos están relacionados.

Como puedes ver eneste ejemplo con el código casi igual que el que tengo, la fuente se cambia cuando hace clic en los enlaces y también cambia el contenido de la página, pero sin volver a cargar la página. Mi pregunta es, ¿qué me estoy perdiendo aquí y cómo lograr el mismo efecto? ¿Me falta algún código php o qué? Estoy luchando contra esto en los últimos días, lo he intentado todo y no pude hacerlo funcionar.

Nota: solo los enlaces de inicio y proyecto están funcionando por ahora ...

Muchas gracias por todas las respuestas!

Respuestas a la pregunta(2)

Su respuesta a la pregunta