free: Fix first column justification
free has for many years had a problem with translated header columns
or the first column. This is because printf("-9s", str) doesn't use
the wide length of the string but the char length meaning they are
mis-aligned.
Using the mbstowcs() function to get the wide length and then
a precision parameter to append the right number of spaces after the
number means we get what we need.
References:
procps-ng/procps#229
procps-ng/procps#204
procps-ng/procps#206
https://bugs.debian.org/
1001689
Signed-off-by: Craig Small <csmall@dropbear.xyz>