Adjust PhantomJS bootstrap to inject bridge on DOMContentLoaded. Closes gh-219.
Pass uglify task options object directly into uglify lib.
Set uglify task "mangle" or "squeeze" option to false to completely disable ast_mangle or ast_squeeze. Closes gh-390.
Adding character encoding support. Closes gh-137.

* Added file.defaultEncoding property. Defaults to 'utf8'. All built-in file methods will default to this encoding if one is not specified. Change it before you actually DO anything in your gruntfile!
* Used iconv-lite lib to handle non-standard encodings like iso-8859-1.
* Updated file.write method: added "options" object, supports options.encoding property. Set to null if you want to pass in an already-encoded Buffer instead of a string.
* Updated file.read method: "encoding" boolean arg changed to "options" object, supports options.encoding property. Set to null if you want to receive a non-decoded Buffer instead of a string.
* Updated file.copy method: "options" object supports options.encoding property. If options.process is specified, set options.encoding to null to process file contents as Buffers (otherwise contents will be String)
* Updated file.readJSON method: added "options" object, supports options.encoding property.
* Updated file.readYAML method: added "options" object, supports options.encoding property.
Update AUTHORS to include @sindresorhus. Closes gh-417.
Upgrade node-jshint to ~0.9.0. Closes gh-340, gh-418, gh-425, gh-431.

* Removed custom jshint task "unused" reporting.
* Grunt and init templates now all use the jshint "unused" option.
The "description" argument to registerMultiTask is now optional. Closes gh-256.
Minor alias task visual tweak.
The --stack option now displays stack traces when exiting with a warning or fatal error, instead of --debug=9. Closes gh-420.
Add v0.4 migration guide to documentation.
Update migration guide with latest changes
Change wording about unused vars with jshint
Document new banner option
Adding file.isPathCwd and file.isPathInCwd methods.
Update docs with file.isPathCwd and file.isPathInCwd methods.
Tasks are no longer loaded from file.userDir (eg. ~/.grunt/tasks). Closes gh-437.
Fixing issue with file.expandFiles where input arrays were not flattened and results were not uniqed.
Switched from node-glob-whatev to @isaacs node-glob. Closes gh-157.

* this allows the "nonull" option to work, which will allow issues gh-182 and gruntjs/grunt-contrib-mincss#1 to be fixed.
Modifing concat task to warn on missing src files/patterns.
Preliminary new gruntplugin init template.