Avoid external configs and added a test that uses an external template
but doesn't supply the path.

This leads to an assertion failure instead of a failure.
Function git_config_open_default() now returns a failure, if no
config can be loaded.

Some code assumes that the config returned by
git_config_open_default() can be readily queried. However, as the
current query functions assert for the existence of at least one
config file, we now fail returning a default config, if no config
file could be identified. With that change, all tests pass again.

Note that in the future, we may simply return a failure in the
query instead.