Add a new DEPENDS option to ensure tool runs after DEPENDS.

Also implicitly add all generated sources to it. This ensures that for parallel
builds, all the pre-existing generated sources and DEPENDS will be run
before running the checker.
Support Windows and Code Coverage Generation
Various linter and minor style fixes
Use cmake-unit source and binary file generators in tests
Refactor some common code in the RunTool tests into helper macros
Use helper for SpecialCompilationDB tests