Make default cache size suffix be "G", like documented
doc: Sort configuration options correctly and fix typo
doc: Add missing documentation for max_files and max_size options
Whitespace cleanup
Create CACHEDIR.TAG files in [0-9a-f] subdirectories to avoid losing the config
Revert "Do not rely on pids being unique"

This reverts commit a07f46a3b0f7e452d50690b831bb4c99fbc6650f.

It turned out to be a bad idea to use mkstemp for temporary files that are
renamed into files to save in the cache since mkstemp creates the file with
permissions 0600.
Merge branch '3.1-maint' into 3.2-maint

* 3.1-maint:
  Revert "Do not rely on pids being unique"
Set correct permission for stats, manifest and ccache.conf files

This fixes a regression in a07f46a3b0f7e452d50690b831bb4c99fbc6650f and
fc61ca9a9232f26ee3f714d4b8738d916f6948ff where mkstemp was introduced for
creating temporary files. However, mkstemp creates files with 0600
permissions, which is bad for temporary files that are renamed to a
persistent name in the cache.
Prepare for v3.2.1