Added Bower.js and rewritten some Grunt tasks