Infrastructure for keyboard detection by language

This allows simpler detection trees that only need to distinguish
among the likely keyboards for a user's language.

Using gettext locale rules, search for the best available match
in order from most desirable to least desirable, and fall back to
the full detection tree (default locale "C") if no better match.

To add support for a specific language, create the appropriate
directory in gnome-initial-setup/pages/keyboard/detector-trees
with a tweaked version of pc105.tree, and add the file path to
gnome-initial-setup/pages/keyboard/keyboard.gresource.xml.

[endlessm/eos-shell#4213]
Keyboard detection trees for Spanish and Portuguese

If the user's language is Spanish or Portuguese,
assume the user is using one of the following keyboards:
br, es, latam, pt, or us.
This greatly simplifies the detection logic.
(If the user has something different, he/she can still
manually select a specific layout.)

For now, we use the same trees for Spanish and Portuguese,
under the assumption that there may be some cross-pollination
of Spanish and Portuguese speakers and keyboards throughout
Latin America.

The maps are generated via the keymaptree script provided
with the source of console-setup-1.70ubuntu10, by modifying
keymaptree.use to include only the relevant layouts.

[endlessm/eos-shell#4213]
Remove detection of us:intl keyboard

The step asking a user if the umlaut key (¨) is present
is very confusing, as it can easily be mistaken for the
double quotation marks (").  Many users who have a US keyboard
would thus incorrectly be detected as us:intl.  Besides, most
if not all users who want the us:intl layout would be using a
standard US keyboard and the umlaut would not be physically
visible on the keyboard.  Better to just let those users who
want the international mapping for the US keyboard to manually
select the appropriate layout.

[endlessm/eos-shell#4213]
Merge pull request #72 from endlessm/shell/4213

Shell/4213