Use getopt.gnu_getopt

If you were ever annoyed by starting Picard from the console with a
specific folder, noticing you forgot the `-d`, stopping Picard, pressing
arrow-up, adding the `-d` to the end of the line, only to notice that
this didn't help at all, this commit is for you because now the option
parsing doesn't stop after the first thing that's not an option.
Set up Transifex to pull the country name translations.
Build picard-countries.po for enabled languages.
Add note to NEWS.txt about PICARD-205 being fixed.
Add a update_countries command to setup.py

It retrieves countries.pot from transifex and uses it to generated picard/countries.py
Add po/countries/countries.pot to git ignore list

We don't want this one to be committed to git repo, it is not created
by parsing Picard code.
Add generated picard/countries.py
Replace the release countries in const.py with import from countries.py.
Use ungettext_countries() for translating country names.
Build, install and use all available locales

Drop the use of UI_LANGUAGES in setup.py which was restricting available translations,
even though translation was available from transifex.

Locales not in UI_LANGUAGES cannot be selected from Picard Advanced UI option,
but will be used if it is set to system default.
Add command get_po_files to setup.py

It runs tx pull with needed options.
Translations with less than 5% translated are ignored.
Use a constant for common options of tx pull
Update countries.pot parser since format changed (iso_code -> iso.code)

It changed in https://bitbucket.org/metabrainz/musicbrainz-server/pull-request/426/mbs-6373-only-translate-and-extract-area/diff
Warn if no country code was found, ie. when file format changed.
Regenerate countries.py from updated countries.pot
Add helper _exit_with_error() which log and exit with return code
Add `regen_pot_file` command to setup.py

It is using Babel's Distutils Integration command `extract_messages`
instead of pybabel command line command.

See: http://babel.pocoo.org/docs/setup/
Move information about translations to po/README.md
Use list to handle tx pull options
Download only countries.pot to regenerate countries.py