LocaleConverter fix for incomplete locales

LocaleConverter wasn't able to decode properly "incomplete" locales such as: "new Locale("", "XX")".
Added tests and a fix for the converter.
We prefer more descriptive variable names - can you change this to "locale", or something equally descriptive please?