shaper: actually correctly handle @font advance

The code was confusing glyph index and Unicode codepoint.
256df617 attempted a fix but merely moved the wrong code.

Fixes Google Code issue #94.

Vertical ligatures are possibly still broken, but
horizontal ligatures and non-ligatures are correct now.
Parse Angle overrides as floating-point numbers

This complements 5903771e.
Support fractional \org arguments
Stop misparsing and add support for \fsc
Stop animating \b and \i

Unlike what the cc635086 message says, VSFilter does not animate them.
Fix \fs+ and \fs-

The argument is a relative amount. The unit is: \fs+1 = +10%.
A whole bunch of parsing and default value fixes

Obtained by reading the xy-VSFilter source code.
Accept colors with arbitrary sequences of leading & and H
Scale distance to screen plane like blur radius

VSFilter forgets to scale this distance,
just like it forgets to scale blur radius.
Fix \pbo

b61d260b attempted to add support for \p scaling to \pbo.
However, while it fixed the exact sample originally reported,
it broke \pbo with other \p values, including \p1, by confusing
the direction of scaling and the units in which \pbo is measured.

In addition, the descenders assigned to drawings have always
had a wrong sign, causing lines that contain drawings with \pbo
to be shifted in the wrong direction: negative \pbo raised bottom-
aligned lines, while positive \pbo lowered top-aligned lines.

All errors and fixes have been confirmed with VSFilter.
Don't try to remove end-of-line \fsp

VSFilter does not do this.

The code being removed was already buggy: i > 0 should
have been "got any non-skipped glyphs since last_break?",
and hspacing should have been taken from glyphs[i-1].
Fix \fsp: use orig_scale_x, not post-fix_glyph_scaling scale_x
Distinguish cached glyphs with different hspacing when border_style == 3

hspacing affects opaque box borders.
shaper: disable ligatures for non-zero \fsp
Terminate drawings on {

This brings us in line with VSFilter
and also fixes Google Code issue #101.
Do not reset \pbo and \p values after each drawing

Confirmed with VSFilter. This complements the previous commit.
Merge pull request #17 from astiob/compat

Various compatibility fixes + fix @font advance with HarfBuzz