[truetype] Fix SSW instruction.

* src/truetype/ttinterp.c (DO_SSW): SSW *does* use font units.  For
verification, it took some time to find a font which actually uses
this instruction.
[truetype] Improve comment.
s/maximal/maximum/ everywhere, s/minimal/minimum/ where appropriate.
[autofit] Return correct linear advance width values.

This was quite a subtle bug which accidentally showed up with glyph
`afii10023' of arial.ttf (version 2.76).  This glyph is a composite;
the first component, `E', has an advance width of 1366 font units,
while the advance width of the composite itself (which looks like
uppercase `E' with dieresis) is 1367 font units.  I think this is
actually a bug in the font itself, because there is no reason that
this glyph has not the same width as uppercase `E' without the
dieresis.  Anyway, it helped identify this problem.

Using the TrueType hinter, the correct value (1367) of `afii10023'
was returned, but the autohinter mysteriously returned 1366.

Digging in the code showed that the autohinter recursively calls
FT_Load_Glyph to load the glyph, adding the FT_LOAD_NO_SCALE load
flag.  However, the `linearHoriAdvance' field is still returned as a
scaled value.  To avoid scaling twice, the old code in autofit reset
`linearHoriAdvance', using the `horiAdvance' field.  This seemed to
work since FT_LOAD_NO_SCALE was in use, but it failed actually,
because `horiAdvance' is defined as the distance of the first
subglyph's phantom points, which in turn are initialized using the
advance width of the first subglyph.  And as the given example
shows, these widths can differ.

* src/autofit/afloader.c (af_loader_load_g): Temporarily set
FT_LOAD_LINEAR_DESIGN while calling FT_Load_Glyph to get unscaled
values for the linear advance widths.
Comment typo.
Fix Savannah bug #35833.

Based on the patch given in the bug report.

* src/type1/t1load.c (IS_INCREMENTAL): New macro.
(read_binary_data): Add parameter `incremental'.
Update all callers using `IS_INCREMENTAL'.
[sfnt] Add `name' table compatibility to MS Windows.

* src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16,
tt_name_entry_ascii_from_other): Don't replace `\0' with question
marks when converting strings.
[sfnt] A refinement of the previous commit.

* src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16,
tt_name_entry_ascii_from_other): Stop at null byte.
[sfnt] Make arrays static like all others.

* src/sfnt/ttload.c (tt_face_load_maxp, tt_face_load_os2),
src/sfnt/ttmtx.c (tt_face_load_hhea): Add `static' keyword to frame
fields.
[bdf] Really fix 35658.

* src/bdf/bdflib.c (_bdf_list_split): Add one more `field' initializer.
[type1] Fix Savannah bug #35847.

* src/type1/t1load.c (parse_subrs): Fix the loop exit condition;
we want to exit when we have run out of data.
Improve misleading documentation note.
[bdf] Improvement to Savannah bug #35656.

* src/bdf/bdflib.c (isdigok): Add cast, as suggested in report.
[configure] fix Savannah bug #35644.

* builds/unix/configure.raw: Check `-ansi' flag works even if gcc
is used.  Bionic libc headers for Android lose the consistency
when they are parsed with __STDC_VERSION__ older than 199901L or
__STRICT_ANSI__.
[bdflib] Remove redundant macro.

* src/bdf/bdflib.c (isdigok): Remove and replace with sbitset, which
is exactly the same.
[autofit] Properly copy scaler flags to script metrics object.

Without this patch, only the dummy and cjk autohinter modules get
them (since they copy the whole scaler object).

* src/autofit/aflatin.c (af_latin_metrics_scale),
src/autofit/aflatin2.c (af_latin2_metrics_scale): Implement it.
Remove compiler warning.

* src/truetype/ttgload.c (TT_Load_Glyph)
[!TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Access `glyph->face' directly.
Minor documentation improvement.