Add the 'translations' task to Grunt

Running 'grunt translations' does the following:
- fetches the available languages from Transifex
- skips the languages with a translation progress below 95%
- downloads .po files
- compile .mo files from .po files with gettext's msgfmt
  (that must be available in PATH)
- deletes the downloaded .po files

You have to create a Gruntfile.c5config.js file.
See Gruntfile.c5config-sample.js for further instructions.
External translations task, locale selection

* Move the 'translation' task outside the main Gruntfile
* Add support for specifying a list of locales to work on
* Allow setting the translation limit
Removed debug code

Sorry... :(
Let's adopt a parameters file to customize Grunt options

Let's introduct an optional Gruntfile.parameters.js file, where users can
put their custom values without the need to touch Gruntfile.
Removed old file
Bugfix
Update .gitignore
Fix encoding of downloaded .po files
Removed "between" from "A username must be between at least %s characters long."
Removed "between" from "A username must be between at least %s characters long."
Merge pull request #1415 from tsemerad/master

Remove unnecessary "between" from username length error message
Merge pull request #1410 from mlocati/grunt-translations

Add the 'translations' task to Grunt