beginnings of framework to allow localized strings to be read from downloaded modules: in xml replace string references with a custom attribute that's the same thing, then in overridden view subclasses pull the reference from the AttributeSet and look it up myself.  Works to uppercase all strings in the NewGames dialog.
fix formatting
menus are broken: you don't get access to an AttributeSet when inflating them. So replace string references with strings equal to the name of the id (xxx in R.string.xxx); next I'll need to harvest the strings from R.java and map them to their numbers in a way that's runtime-accessible.
generate mapping from actual strings to R.string.id that can be used at runtime to convert/lookup menu titles. Works to uppercase a menu! Changes break dbg and bt builds -- to be fixed.
menu title can be null
make board menu localizable -- but submenus don't work yet
transform submenus too
add getString() variants to LocUtils and use from BoardActivity
convert most of GamesList to be localizable
include loc: strings from common_rsrc.xml
new type of problem: make a string array in ListPreference localizable
remove localized files. They'll get used somehow but not in this form on this branch.
replace %s and %d (and enforce)
enforce new convention: strings containing formatting must be names whatever_fmt (and strings containing formatting must be so named.) I'm going to have to parse such strings, which will be expensive, so being able to determine from the name whether there's a need should help.
add activity for localizing strings and add menuitem to localizable activities to trigger it.  Does nothing yet, including populating itself.
display English text on left side of table
rename style and use it to align table header with columns
preserve translation changes in memory. Next: write to DB.
add loc table to store translation data, mapping key and locale to text
use new loc db to save translation data (per locale) across boots.