[r21595]GrampsLocale: Improve handling the language list

Replace "en" with "C" when setting $LANGUAGE ("en" confuses GtkBuilder), and explicitly iterate over languages when finding
the translator, because left to itself gettext will ignore English.

git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/branches/maintenance/gramps40@21598 4ae1f11a-8b86-4847-b8af-ab372f36d1fd
[r21596]Mac: Improve language list handling

Make sure that lang overrides the language list only if $LANG is set. Don't add encodings to the language list (e.g., en_US, not en_US.UTF-8). Start collation with None, because `if collation:` is True for collation = "". defaults may have whitespace at the end of "root", so use "startswith".

git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/branches/maintenance/gramps40@21599 4ae1f11a-8b86-4847-b8af-ab372f36d1fd
[r21597]Grampslocale: Protect from crashes due to passing bad strings to
setlocale

git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/branches/maintenance/gramps40@21600 4ae1f11a-8b86-4847-b8af-ab372f36d1fd