support single term locale strings, such as "en"

This adds supports for single term locales such as "en", as opposed to "en-us".  Currently these are treated as not parseable but are actually legal locales