Add ICU message format support
Adopt and customize a ICU message format wrapper used at Google to meet
Chromium's need.
This will enable formatting of 'complex messages' requiring plural and/or
selector (e.g. gender or 'single vs multiple') support with more than one
parameters.
Besides, l10n_util::GetPluralStringF* is rewritten to use this API.
I'm also planning to use this API to add a similar support to Chromium's
JavaScript-based UI and extensions.
References:
MessageFormat specs:
http://icu-project.org/apiref/icu4j/com/ibm/icu/text/MessageFormat.html
http://icu-project.org/apiref/icu4c/classicu_1_1DecimalFormat.html#details
Examples:
http://userguide.icu-project.org/formatparse/messages
message_formatter_unittest.cc
go/plurals inside Google.
BUG=481734
TEST=base_unittests --gtest_filter="MessageFormat*"
Review URL: https://codereview.chromium.org/
1140153005
Cr-Commit-Position: refs/heads/master@{#342327}