fix computing rules
reorganize templates
use component to manage static files
update bootstrap
do + component to manage js loading; add grunt-hashmap task