Improve status reporting.

Add more granular status reporting; refactor the 'status' module.

Change-Id: I83457a8b5424d3bc035ee4870047c2c7531ea7c7
Switch from Gentium to Charis for Latin/Cyrillic text.

Charis has a complete set of bold and italics, unlike Gentium.

Change-Id: I421cf6166591430f08bc365b60e823812edcb463
Improve status reporting for article/chapter processing.

Change-Id: I5efa576a951201f674fa428665cfacada8bc8a5f
Keep LaTeX happy even if <references> section has no items.

Change-Id: I45c82ac5d80ca6dc81685212d28b0b0b900bebf9
Use \graphicspath to avoid overly-long graphics filenames.

Change-Id: Iceeb758f38bf71ecf190bb53fe13017ce0290414
Fix tilde/caret when followed by numeric characters.

Change-Id: Ic61d7dd98095de301a9aa40983603b2ddf2640f6
Only allow a single '.' in image filenames.

The graphicx package gets confused about the image type if there are
other '.' characters before the one delimiting the filename extension.
So rename those files before we give the filenames to LaTeX.

Change-Id: I27213421a0a4691134750858f21680273481e826
Use exiftool to strip resolution information from JPEGs to avoid a LaTeX error.

XeLaTeX will fail with a "dimension too large" error if the computed "actual
size" of the image is excessive.  For instance, if the JFIF X/Y resolution
value is set to "1dpi" and the image is 1200x800, \includegraphics will
fail.

Strip the X/Y resolution information with exiftool during image processing
to avoid this failure (we scale the image to fit the column widths anyway,
the EXIF dpi information is irrelevant).

Add a test case for this issue: the dewiki 'Papier' article contains an
image with overly-small resolution values.

Change-Id: I33e08508ce117b8843430bd23ac80ebaf321f1ca
Use imagemagick 'mogrify' to strip EXIF resolution information.

This avoids adding another external dependency.

Change-Id: I1c49909dc05b960fe088de780f8d6620d0bdf41a
Make filenames "safe" before passing to image converters.

Parentheses in the filename were causing issues with the spawn of exiftool.

Change-Id: Ib0bdd7826f425b1b83eb4be89632595eb9bf730c
Non-English language support via polyglossia.

Add xunicode and polyglossia packages for better language support.
Process HTML 'lang' attributes and emit the proper polyglossia
language-change command.  Add texlive-lang-all package to get all the
appropriate hyphenation patterns, etc.

Set default font to GNU freefont's "FreeSerif" face, which has better
non-latin support (but no CJK characters).

Change-Id: I08454de9c33e5971c76db2313b4bc2a48e74af1d
Support explicit DIR attributes on HTML elements.

Change-Id: I47a80f153de18242ded0553c73afc160f972285f
Improve BR/DIV linebreak handling.

Don't try to terminate a line if we haven't started one yet.  LaTeX doesn't
like that.

Change-Id: I064512165b93a37b5f33834b5cc3016314ec91b7
Suppress 'toplink' on hewiki.

For example: https://he.wikipedia.org/wiki/הפארק הלאומי יוסמיטי

Change-Id: Ie20b058e843bfc76b79c5ffc1c811807647d665a
Suppress hyperlinks in indexed section titles.

Fix bug in itwiki and hiwiki samples caused by a \hyperlink embedded
within a \section heading.  Strip hyperlinks from the "short title"
used in the index, etc.

Change-Id: I7ab35494de6f1208d034985a3ad00c1b5a65ec16
Use proper line-breaking algorithm for URLs (or things which look like them).

Change-Id: Ia781bdea1db04a7ba9a4ea71856630b08eb25cca
Avoid deferred floats caused by float size/quantity restrictions.

Change-Id: I60bc2fdfaa0a99dbc3be14f9445769174d931d4d
Don't render icons smaller than 16x16 as floating figures.

Change-Id: Ib4485772f39f4c40e599153cf138deff90ab6ccb
Update commander/gammalatex/mocha/when deps.

Change-Id: Ia49e0c479ddb76050ef63a148f5df62ccf5b4187
Point all github urls to official wikimedia mirrors.

Change-Id: I163323ef55759f4de77086dfb2228470e8b94175