Refactored to use Bower and Grunt