Fixed: CPLocale detection didn't work.

Previously, if the browser provided a language string such as "en-US", CPLocale would try to look up the locale for "en_EN", which wouldn't exist so it'd always select the default language.

This fix uses the browser provided language string fully to select the appropriate locale.
Fixed: CPLocale for English, United Kingdom had the wrong identifier.