doc build: use w3c's link checker, if available

If the w3c link checker is available, run it on all our generated html
docs.  It does a better job than our checklink.py program, but it's not
available on Lucid.  (It is available on both Hardy and Precise.)

If it finds any broken links it English it fails the build.

If it finds any broken links it French (there are many) it warns but
does *not* fail the build.  When the french links are fixed we'll turn
broken links into a build failure too.
doc build: make CSS and JS stuff external to the docs

Before this commit, we ran asciidoc in its default mode, where it inlines
the stylesheets and javascript inside each document.

This commit changes asciidoc to link to external style sheets and
javascript instead, so we can get by with one copy of those things.

We copy all the asciidoc CSS and JS files into our directory of generated
html docs.  asciidoc used to inline some (but not all) of those documents
in each html file.

Also move our custom stylesheet from doc/src to doc/html, where it will
be used.

The effects of this commit are:

    Copy some of asciidoc's files into our html tree.

    Slightly smaller docs: each document shrinks by about a dozen
    kilobytes (the CSS and JS files are cached by the client after the
    first fetch).

    No bogus inlining.  Inlining is discouraged by the w3c, and asciidoc
    got it wrong:

        http://www.w3.org/TR/xhtml1/#h-4.8

        http://www.w3.org/TR/xhtml-media-types/#C_4
checklinks fixup