Add feature to auto-load grunt plugins & collections from Npm modules.

This commit adds a feature to auto-load all grunt plugins and collections that have been installed locally as Npm modules, to be used for convenience instead of a series of calls to `grunt.loadNpmTasks`. Use in a Gruntfile as follows:

```js
  grunt.autoloadNpmTasks();
```

I added a test for the helper function `grunt.task.detectNpmTasks`. It appears there are no existing tests `grunt.task.npmLoadTasks` or `grunt.task.loadTasks`, so I didn't add any for `grunt.task.autoloadNpmTasks` directly either, but have tested the feature in local Grunt projects.

P.S. - Where do we update the documentation, as directed at [Contributing : Submitting pull requests #5](http://gruntjs.com/contributing#submitting-pull-requests)?