+/** Produces a Salted MD5 crypt of a password using the supplied salt
+ * @param key The password we're encrypting
+ * @param salt The salt we're using to encrypt it
+ * @return The Salted MD5 password of key and salt
+ *
+ * Erm does exactly what the brief comment says. If you think I'm writing a
+ * description of how MD5 works, you have another think coming. Go and read
+ * Applied Cryptography by Bruce Schneier. The only difference is we use a
+ * salt at the beginning of the password to perturb it so that the same password
+ * doesn't always produce the same hash.
+ *
+ */