I wouldn't recommend getting a GTX 580. It runs DirectX 12.0, whereas newer cards can take advantage of 12.1. Additionally, it's limited to 1.5GB of video memory, which could bottleneck the GPU when loading hefty textures. Lastly it runs fairly hot with a TDP of 244 watts.
On the other hand, a GTX 950 would be noticeably better. It's compatible with DirectX 12.1, and has 2GB of video memory, meaning it won't have as much trouble with more taxing textures. Furthermore, it has 200 more cuda cores, and only uses an astonishing 90 watts. Most importantly, the driver support for the GTX 950 will remain updated for years to come, whereas the GTX 580 may not due to it's age.
You would pay a bit more for a 950 and it's better performance, however with it's lower wattage, you could save a few bucks and buy a lower watt power supply; compensating for the more expensive GPU.
Here's one of the cheapest new 950s on newegg: http://www.newegg.com/Product/Product.aspx?Item=N82E16814487225&nm_mc=AFC-C8Junction&cm_mmc=AFC-C8Junction-PCPartPicker,%20LLC-_-na-_-na-_-na&cm_sp=&AID=10446076&PID=3938566&SID=