Use reduce to merge multiple promise results.
Use reduce to merge multiple promise results.

- Avoid local variables - `invalidFiles` and `invalidDirs`.
- The reduce and promise evaluate can be smart with some strategy.
- On the `getDirectoryDependencies` level, no rejected promises.

depcheck/depcheck,depcheck/depcheck