I must say that the GTX 660 is a better textel master as it is quicker to reload textures on a perticullar game, however if you want to play in high res (1080p) radeon hd 7870 is a better choice as it is higher in pixel bufor which means that the pixels on your monitor are loaded much quicker which mean that it will give you a smoother gameplay, however to make that smoothest happen you need to have at leas a 120Mhz monitor to see the full graphics card potential.
For overall both graphics card are nearly the same, but if you want to play games such as Bordelands 2 its better to have GTX 660 as the game uses Physcs so it will look better and run quicker, however if you want to play games like BF4 or COD Radeon is better as those games dont seem to use physcs engines as far as i am concered.
For now its up to you to pick as you need to think in the feuture of how the games will work and what they will use. Personally i would pick GTX 660 as there are more and more games coming up every year that uses physcs such as Crysis 3, Planetside 2, Titanfall or Skyrim Online (Skyrim is just an opinion
).
I hope this helped you and good luck in your pick.
Sincerally.
Krysto