fkr :
well if we look at the frequency at which you may need to upgrade a gpu as compared to how frequently you would need to change your CPU it would seem like the most prudent thing to do is spend it on the CPU. You can still game on an old quad core but if we looked at a GPU from that same generation you would not be able to play any recent games.
or look at system requirements for games.
the i5 2500k was released jan 2011
that same month the gtx 560 ti came out.
which is a better component for gaming today. i would start a build out with a 2500k before i started with a gtx 560ti
the above is the system i built at the end of 2011 and I recently had to upgrade to a tahiti LE which i find is just behind the new gtx 760; furthermore, i think the two listed GPU's are at or near the top of what 1080p gaming is needing. If you are running a 120 hz monitor or playing at a 1440P resolution I would go for the CPU
The last thing you said makes no sense. If 120 Hz/1440p, why would one spend the money on the CPU compared to the GPU? The 4670k will be more than enough for any gaming for a long time to come, as will the FX-8320. It is simply the matter of more, less-powerful cores, or less, more-powerful cores. Both will perform very well in anything with a GPU like the Radeon 7950 or the GTX 760.
And as to your first point? I guarantee you that the 2500k is still not being completely utilized in games. SB processors to IB processors has been a very small leap, and even smaller from IB to Haswell. You'd be best off, of course, getting the 4670k and a 7950, but either choice will be fine. The 4670k will be especially good, since, if Intel keeps up their same way of processor progression, it will take twenty years before you can tell a difference between the 4670k and that generation of processor.