libagg still fails with clang 425

Closes #17798.
qemu: fix configure.

Caused by #17754.

Closes #17785.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
GitDownloadStrategy: split #fetch into several methods
GitDownloadStrategy: split up submodule update and checkout
GitDownloadStrategy: extract checkout from #stage