Fix display of short commit messages

Now that we can see other repositories, we stumble on a bug. When a
commit message consists of only the summary line, or is empty
altogether, `markdown.toHTML` breaks down trying to render the empty
string.

So we go over the script and whenever input to `toHTML` might be an
empty string, add a sensible default.

Mostly, the sensible default is an empty string as well, except in the
commit list: we need something to click on, so we put the commit ID
there. (By default, `git` does not accept empty commit messages, so this
should be a rare occasion.)