*bump* All hashes, all the time, no need for options, simply generate a random password and let the user change it when they lose theirs. Simply add plaintext->md5 to the upgrade script. Simply use md5($password) to do it, very little code work needs to be done.
That thing about sending your password as md5:blah is a little silly, isn't it? If someone intercepts that, it's just as useful to them as intercepting the real password. Unless, of course, you use the same password over an unencrypted form that you use to secure sentitive encrypted information. If so...well, you shouldn't.