Fix setLocale for JVM.

This was pointlessly creating a new locale with just the language, and was also not correctly
setting the locale for number formats.