Fix problem with non-null font translations.

We were reporting a width that was too large, because it was
transformed twice. Store the advance width in post-transform
coordinates ("device" coordinates), and after setting a character,
translate by those device coordinates using a new Transform::raw_
translate function. Oy
More precise italic correction calculation.
Secondary: Don't assume _units_per_em is 1000.
The TrueType FontMatrix is determined from units_per_em.