Adding Grunt tasks

Addresses https://bugzilla.mozilla.org/show_bug.cgi?id=1057534

### Available Grunt tasks

| NAME | DESCRIPTION | MULTI 
|----|----|:----:|
|           copyright | Checking for copyrights in files | `*`
|              eslint | Validate files with ESLint | `*`
|            jsonlint | Validate JSON files. | `*`
| validate-shrinkwrap | Submits npm-shrinkwrap.json to nodesecurity.io for validation |
|               shell | Run shell commands | `*`
|                todo | Find TODO, FIXME and NOTE inside project files | `*`
|                lint  | Alias for "eslint", "jsonlint" tasks. |
|       do-shrinkwrap | Alias for "shell:shrinkwrap", "validate-shrinkwrap", "shell:rm-shrinkwrap" tasks. |
|    audit-shrinkwrap | Alias for "do-shrinkwrap", "shell:outdated" tasks. |
|             default | Alias for "lint", "copyright" tasks. |

**Note:** Tasks marked with `*` are "multi tasks" and will iterate over all sub-targets if no argument is specified.