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
Add an option to get_po_files to override default minimun percentage

Update po/README.md so the actual value isn't written, if we change the default value
it will be only at once place.
update_countries doesn't update related translations anymore

It just downloads countries.pot as it is all what it is needed to rebuild
countries.py

countries/*.po are updated using the get_po_files command.
Add notice about new setup.py commands