List all invalid dependencies instead of only the first

Errors are saved and then logged individually to the output
stream.  A final "aborting" message is fatally logged to
stop the build.

Tests have been updated accordingly.