If you have a massive monitor and play games at 1600x1200 will full AA and AF you'll need a top of the line card, 8800GTX. But if you enjoy 1024x768 or 1280x1024. a good 7600GS or 7900 will suite you fine. I would avoid the 8600 and the 8400's. Yes they have DX10 support but games like Crysis will eat these cards alive. My opinion is that it would be a better decision to get a top of the line older 7900 series card over a low end 8000 series card like a 8600 or whatever.
The 8800GTS 320mb are very good cards. The 640mb version will only serve you if you are playing at really high resolutions and have lots of textures to load - think Oblivion. So save the money if you want to drop near $300.
Otherwise if you're just an AH addict, the 7900 or 7950's will do you justice, or even a 7600GS. If you want to play more of the top of the line games coming out in the next few months - you'll need more RAM, a better CPU, and more $$$ video card.
Think of it this way. Whatever fits into your budget.
http://Tomshardware.com can help you pick out a video card based on your budget. Every month they release and article titled "Best Video Card for the money" and break it down to price points like $100 range and the $250 range etc and it will compare benchmarks between ATI and Nvidia cards and give you a recommendation.
About your PSU, go with 450W or so. Don't buy cheap units. Spend a good $70 on a PSU. Remember if you buy a $25 unit, its supplying power to $xxx or $xxxx in other components. I've seen too many systems wrecked due to off brand cheapo PSU's.