The i5 is better for games because the price is so much lower and the i7 has benefits that only help in things that use more than 4 threads, which almost no games do, and even then, Hyper-Threading doesn't give a great performance boost.
I would strongly suggest getting the 2500k and overclocking it later. It is so easy to overclock to even 4Ghz on that CPU with a decent cooler. I could pretty much tell you the settings to change and be almost 100% sure it would work. For $15 more for the k version, it's really work it if you ever want to.
The 2600s is a downclocked (meaning less clock speed and very low power usage, awesome for 24/7 rendering) version of the 2600 that is used for servers/rendering. But for gaming, higher clock speed is better, so the 2500k is the best choice as hyperthreading will not interfere with your gaming needs
I suggest someone always get the unlocked version, for the sole fact that new cpu's come out every 2 years. Just push the cpu up a bit more in mhz and you will be on par with the new stuff, and you can do it too with different types of cooling, from the cheap and high performance Cooler Master Hyper 212+ to a high end custom watercooling setup.
if you want to run games 5 years from now. wait a couple weeks for ivy bridge
it is an upgraded version of sandybridge. it is going to be released in the next few weeks. best to wait for then
(or get a motherboard that takes sandy bridge and supports ivy bridge)
If he buys Sandy Bridge now, he should just wait until Core i 4th gen CPUs come out, as Ivy Bridge will be a very small performance increase because it is a die shrink. But waiting wouldn't be a bad idea, just there would be no point in upgrading form Sandy Bridge to Ivy Bridge really.