Ray-
I had a crankshaft that was damaged, so I had a local welder build it up (paying careful attention to heat build up as Steve says..).
I then used a 4" grinder to grind it almost back to size. Using a bearing as a sizing tool, I then started the tractor up (you guys are gonna get a kick out of this!) and proceeded to "dress" the crank with a flexible sanding/grinding disk mounted on the same 4" angle grinder. About every 5 seconds I would stop the tractor and check it's size with the bearing. Keep in mind that I was removing very small amounts of material and would only proceed for a few seconds before checking my progress, but I found that this method would keep the shape of the crank somewhat round as opposed to static grinding/turning the crank. Since this was a low-pressure/low-effort task, it didn't really damage the keyway either. I wouldn't do this final clean up with a normal grinding wheel however, get the flexible disk!
On the otherhand, having a new keyway cut into the crank may be the best situation in your case, but that would probably require you to tear down the engine...
<FONT SIZE="-2">IMO, FWIW, YMMV, My $0.02, Yada, Yada, Yada...</FONT>