Port Mercurial SSH support to the Go language
During Heptapod 0.12 development, we witnessed efforts to reimplement GitLab Shell in Go that are not yet mandatory at his point.
The Go reimplementation of GitLab Shell is still optional in v10.1.0 (GitLab 12.3.9) and becomes mandatory in v10.2.0 (GitLab 12.4.8).
We need to port over what we've done for SSH support in Go, and either do that before Heptapod 0.13 and have the latter be based on GitLab ≥ 12.4, or stop at GitLab 12.3.8.