add onLoaded function on Components
migrate history.html to underscore syntax
format index.html to SPA style
update app.js