Improve execute() not to rely on special exit codes internally
Merge branch 'maint'

* maint:
  Improve execute() not to rely on special exit codes internally

Conflicts:
	execute.c
Minor code style fix
Extern time_of_compilation.
Check that included files' ctimes aren't too new.

ccache currently checks that a file's mtime isn't too new, unless
CCACHE_SLOPPINESS includes "include_file_mtime".

This patch adds a similar check that a file's ctime isn't too new.  We
skip this check if CCACHE_SLOPPINESS includes "include_file_ctime".
Allow mtime- and ctime-only matches.

If CCACHE_SLOPPINESS includes "file_stat_matches", ccache will consider
two files which match in name, size, mtime, and ctime to have the same
contents.  This allows ccache to avoid reading the file, thus speeding
up cache hits.
Fix test_conf unit tests after b291647878eb3eaa331cb34cab361788231de074
doc: Grammar and layout tweaks
Code style fix
Include manifest version in the direct mode hash

This makes manifest file names unique per manifest version, thus avoiding
ccache versions with different manifest versions overwriting each other's
manifests.