Port latest batch of cukes from master to gh

:warning: This is my work in progress; some cukes still fail

/cc @jingweno
But if we do it in `init()`, then it will always get executed unconditionally? I'd like it to be lazy-loaded in case we run a command that doesn't touch the list of git remotes and therefore doesn't need to parse the URLs or SSH config.

I'll try to do this in the scope of the package-level variable as you suggested. Still learning about Go scoping.