The 970 is still a great card. the 300 series is supposedly better than both, but if it is significantly better it will be expensive and depending on the price, it might be better to SLI the 970.
I personally prefer nVidia hardware for better support and SLI seemingly having less problems than Crossfire but if you're going single card it's really up to you. We can't make the decision. We don't know when the 300 series or the new Ti's will come out. I personally don't like waiting, because what if the new cards aren't that much better than a 970? Or on par with a 980?