store diff files in a flat directory with SHA1 of the path

mapping paths to directories has difficulties:
- http query tokens in file name confuse web servers,
- we could CGI::escape() the paths but that would lose the
  directory structure,
- directory structure is ambiguous in many cases; e.g. if
  we have 'x/' and 'x/y' in paths do we store 'x/' in
  'diffs/x.html' or diffs/x/index.html'?