- grunt (grunt-cli) is command line task runner, not frontend library :), so installing it via bower is strange, but possible due to the fact that bower is using npm as base repository :)
- package.json store all tool dependencies in your project - like bower or grunt
In fronetendfrontend development bower should be handling js frontendcss/js libraries in your app like jQuery, Angular.js ... , Bootstrap. NPM is for node.js extensions/utilities like grunt, karma devDependencies.