Short answer: yes they are basically even for single-GPU. For single GPU they are basically tied once you overclock both to their maximums. At stock the 7970 is slightly slower (10%).
For multi GPU get the gtx 680. NV SLI is better supported.
Long answer: The gtx 680 is more efficient at load and feature rich, such as cuda, physx, adaptive vsync, etc. 7970 has more VRAM but that won't matter for most resolutions. If they were equally priced and you just wanted to game with them, the gtx 680 would almost certainly be the better choice... but now that the 7970 is cheaper it's not as clear which is the better buy.
And yes the 7950 is a good buy if you get one that can clock as high as 7970s can. There is a higher chance that it won't, though, if it was one that didn't make the cut due to clocks. Also the 7970 PCBs are probably higher quality. Just a guess, based on where it sits in the stack. So it can handle power/heat better in all likelihood.
The main selling point to me for the 7970? It came with a single-link active mini DP -> DVI adapter. I know, I know, I am weird.