Well the GTX 670 is already a 2 year old card. So get something from the 7XX cards. A GTX 770 a rebranded 680 with a higher clock/memory speed. While still based on the older core it has faster memory.
Another option is to get a mid level card now and another mid level card in 2-3 years. a mid level card in 2-3 years will be an upgrade from many current cards(at least for the price).
In general, the more you spend the faster the card is, but at a certain point you do not gain enough to be worth it.
As long as you are not looking to "ultra" setting every game over 60fps, the 670 is a fine card.