fix(server): All localized resources are stored on disk by locale, not language.

Additionally:

* Add a 'helper' configuration item: `are_dist_resources` - returns `true` if using dist resources.
* Add i18n.normalizeLocale and i18n.normalizeLanguage.