Disclaimer: i'm new at this myself, far cry from an expert (spicysnow and crazysim are very good)
I doubt you'll ever SLI or crossfire considering you've got an i3 (MAY run into a bottleneck). I agree with everyone on the z77, you dont' need a ton of features so just get the cheapest z77 (the Asus p8z77-V LK is top 3 best bang for buck along with z77x-ud3h, but probably too expensive for your budget).
An SSD is the best thing you could do for your computer, but given your budget i doubt you could get an SSD with the capacity you want. Maybe go 60GB SSD for your OS and 250GB HDD? (HDD prices are way up btw, SSD prices are way down).
I doubt you'll run into cooling issues, but you might want to chuck a hyper 212 on there or some other $20 heatsink.
BTW, both of the CPU/GPU components you picked out are very good, and I would recommend them for a budget gaming build, but I'm still going to advise you to try your best to step up a notch in both categories. IF you go with the recommendations I supplied, your build should end up costing about $703
EDIT: W/ regards to hxcheyo's post. HE makes some recommendations regarding SSDs and the cooler that I can agree with. But, I consider them to be secondary to the more immediate concern of upgrading your CPU/GPU.
Assuming he lives close to a Microcenter to pick up the item, I would recommend SpicySnow's i5 upgrade as well. If he doesn't the $70 upgrade is probably not worth it.
I would def try to get the 7850 that SS recommended as well over the 6870 that you posted though. The 7850 from what i've read is slightly better than the 6950. Having had the 6950, I was able to play BF3 @ 1080p on all High at good FPS. (Ultra became choppy) It will last you longer too before you need to upgrade.
I sold my XFX branded on eBay for $160 so you can probably get one for a good price there, yes it will be used, but the XFX ones come with double lifetime warranties so it will carry over to you (Not sure about the 7xxx series, that might only be single lifetime)