scmutil: teach the file prefetch hook to handle multiple commits
The remainder of the commands that need prefetch deal with multiple revisions.
I initially coded this as a separate hook, but then it needed a list of files
to handle `diff` and `grep`, so it didn't seem worth keeping them separate.
Not every matcher will emit bad file messages (some are built from a list of
files that are known to exist). But it seems better to filter this in one place
than to push this on either each caller or each hook implementation.
<tr>
<td class="age">{date|rfc822date}</td>
<td class="author">{author|person}</td>
<td class="description">
<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{desc|strip|firstline|escape|nonempty}</a>
{alltags}{rename%filelogrename}
</td>
</tr>
{if(patch, '<tr><td colspan="3">{diff}</td></tr>')}