Fix clang report failure when no warnings.

Clang report fails when there are no warnings to report.
Report directory is empty (and it gets erased), so `cp` command after `scan-build` fails.

@justinmk I haven't been able to test this, so it may need some minor adjustment. But the idea should work.
I agree the template mechanism looks neater. But, if I'm not misunderstanding anything, the other accompanying files (css and js) still need to be copied to the destination dir. Then, once we have to copy those files too, it seems simpler to copy a third file (index.html) in the same operation, instead of having a separate step to generate index.html. Don't you think?