Report errors for all builder at once.

This also changes all of the config error reporting to use `config.error`
instead of sometimes using `.addError`.

I don't like flapping the `checkConfig` signature, but I'm not sure how to improve the situtation.