go.crypto/ssh: Miscellaneous changes up for discussion.
Export key and certificate algorithm names.
Switch from string literals over to using the constants for any key/cert algorithm references.
Make URL references visible in the godoc web display.
Standardize url reference names with surrounding [].

R=dave, agl, jonathan.mark.pittman
CC=golang-dev
https://golang.org/cl/6944047
diff --git a/ssh/common.go b/ssh/common.go
index 82b2f25..e03a2b3 100644
--- a/ssh/common.go
+++ b/ssh/common.go
@@ -193,16 +193,16 @@
 	// The corresponding private key to a public certificate is always a normal
 	// private key.  For signature serialization purposes, ensure we use the
 	// proper key algorithm name in case the public cert algorithm name is passed.
-	case certAlgoRSAv01:
-		algoname = "ssh-rsa"
-	case certAlgoDSAv01:
-		algoname = "ssh-dss"
-	case certAlgoECDSA256v01:
-		algoname = "ecdsa-sha2-nistp256"
-	case certAlgoECDSA384v01:
-		algoname = "ecdsa-sha2-nistp384"
-	case certAlgoECDSA521v01:
-		algoname = "ecdsa-sha2-nistp521"
+	case CertAlgoRSAv01:
+		algoname = KeyAlgoRSA
+	case CertAlgoDSAv01:
+		algoname = KeyAlgoDSA
+	case CertAlgoECDSA256v01:
+		algoname = KeyAlgoECDSA256
+	case CertAlgoECDSA384v01:
+		algoname = KeyAlgoECDSA384
+	case CertAlgoECDSA521v01:
+		algoname = KeyAlgoECDSA521
 	}
 	length := stringLength(len(algoname))
 	length += stringLength(len(sig))
@@ -242,17 +242,17 @@
 func algoName(key interface{}) string {
 	switch key.(type) {
 	case *rsa.PublicKey:
-		return "ssh-rsa"
+		return KeyAlgoRSA
 	case *dsa.PublicKey:
-		return "ssh-dss"
+		return KeyAlgoDSA
 	case *ecdsa.PublicKey:
 		switch key.(*ecdsa.PublicKey).Params().BitSize {
 		case 256:
-			return "ecdsa-sha2-nistp256"
+			return KeyAlgoECDSA256
 		case 384:
-			return "ecdsa-sha2-nistp384"
+			return KeyAlgoECDSA384
 		case 521:
-			return "ecdsa-sha2-nistp521"
+			return KeyAlgoECDSA521
 		}
 	case *OpenSSHCertV01:
 		return algoName(key.(*OpenSSHCertV01).Key) + "-cert-v01@openssh.com"