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
Force download of all .po files when using get_po_files command