internal/number: add Decimal type

Decimal is used as an intermediate format of numbers before
formatting or determining the plural form.

This type supports converting a variety of number types
to decimal form. It also supports rounding modes that
are commonly provided for localization purposes.

Change-Id: I8aaa9fcf6a6ad21b885534a75757c03b579a1930
Reviewed-on: https://go-review.googlesource.com/45493
Run-TryBot: Marcel van Lohuizen <mpvl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Nigel Tao <nigeltao@golang.org>
3 files changed