Add ca-ES for localization
Merge pull request #1800 from rogerbramon/ca_ES-locale

Add ca-ES for localization
Consistent SI-prefix for ticks. Fixes #1746.

When a SI-prefix format (type "s") is passed to scale.tickFormat, compute a
suitable SI-prefix based on the maximum value in the range, and then use that
prefix for all ticks rather than computing the SI-prefix on a per-tick basis.
Consistent SI-prefix for small numbers.

For reasons that I can’t recall, the SI-prefix behavior was different for small
numbers (between -1 and 1) than it was for large numbers. This commit enforces
consistent behavior, so that the coefficient is always in the range [1, 1000),
like in engineering notation.

For example, the old d3.format("s") would display 0.01 as "0.01", whereas the
new behavior displays it as "10m".
More standard precision interpretation.

Rather than overload the meaning of precision to bias the selection of the SI
prefix, always use the standard SI prefix, and use the precision in the same
sense as with fixed digits: the number of digits after the decimal point.
Default to suitable precision.

The point of this method is to pick the right precision for you!
Merge branch 'consistent-si-prefix' into 3.4.4