Package units provides helpful unit multipliers and functions for Go.
The goal of this package is to have functionality similar to the time  package.
It allows for code like this:
n, err := ParseBase2Bytes("1KB") // n == 1024 n = units.Mebibyte * 512
Base-2 byte units.
SI base-10 byte units.
SI unit multiples.
ParseStrictBytes supports both iB and B suffixes for base 2 and metric, respectively. That is, KiB represents 1024 and kB, KB represent 1000.
Base2Bytes is the old non-SI power-of-2 byte scale (1024 bytes in a kilobyte, etc.).
ParseBase2Bytes supports both iB and B in base-2 multipliers. That is, KB and KiB are both 1024. However "kB", which is the correct SI spelling of 1000 Bytes, is rejected.
MetricBytes are SI byte units (1000 bytes in a kilobyte).
ParseMetricBytes parses base-10 metric byte units. That is, KB is 1000 bytes.
TODO: represents 1000B as uppercase "KB", while SI standard requires "kB".