squash! implement fetching of moved submodules

We stay backwards compatible for legacy repositories that are missing
submodule configuration values.
t5526: fix some broken && chains
Merge branch 'hv/fetch-submodules-recursive-broken-chains' into hv/fetch-submodules-recursive
Merge branch 'hv/fetch-submodules-recursive-fix-no-gitmodules' into hv/fetch-submodules-recursive

Conflicts:
	submodule.c