chore(grunt) automate build process

The release task now:
* Takes a parameter type
major: Will bump the major part of a version, resetting minor, patch, and build to 0.
minor: Will bump the minor part of a version, resetting patch, and build to 0.
patch: Will bump the patch part of a version, resetting build to 0.
build: Will bump the build part of a version.

Usage example
grunt release:major
* Updates version number in package.json
* Updates version number in components.json
* Generates a complete changelog in changelog.full.md

tagrelease task
* Commits the changes and tags the release.

Requires manually updating the version number in core.js and CHANGELOG.md