Can add diffs to Atom feed entries

Off by default. Set enable-atom-diff flag for repos to enable.

Uses HTML5's "scoped CSS" feature to colorize diff deletes and inserts.
Mainstream pre-HTML5 engines either ignore this or apply the style
document-wide, which should not break anything.

As cgit was not prepared to produce multiple diffs per run,
so this also reset some counters during the diff. Additionally,
the cgit_self_link had to be extended, as it is called during
the diffing.
Improved readability.
Skip forbidden characters.
add xml-header to atom-feed
display updated, use urn/url for atom:id
only one content tag allowed, so remove the text one
add <link rel='self'> to atom feed

FEED Validator recommends it.
fix html error in diff output for binary files