locale changes...

+ no longer warn on unknown locale, just fallback
+ default_locale is readonly and can only be set on instantiation
+ improve default_locale invalid warnings
+ add more locale tests