Fixed help message.
Clean up sorted array traversal utility a little bit.
Add file digest signing & caching.

Currently enabled for .c/.h/.cpp/.hpp files - need a config mechanism.

Intent is to avoid rebuilding when generated files are overwritten with the
exact same contents.
Performance: Pre-compute DJB2 filename hashes.

Precompute hashes for DAG filenames.
Precompute hashes for the scan cache.
Wire up config option to control SHA-1 digest signing

Use Build.ContentDigestExtensions to control what file extensions use digest
signing instead of timestamp signing.