Learning knockout.js SPA development