No need to upgrade every generation. I think a single 7870 would be the most sensible option, especially if you are only pushing a single 1080p monitor. Only the 7900 series officially supports 3-way and 4-way crossfire.
But, of the choices presented, go with the 7970. It's usually better to a single more powerful card vs a pair of cards because of all the technical issues that accompany it; heat, drivers, games that don't utilize it, power consumption, micro-stuttering, etc.