MessageFormat handles locales and knows how to format numbers, currency, etc.

MessageFormat also reoreders.