An i5 will be perfect enough for gaming and all your other needs. An i7 is useless for a gaming, only reason to get it is for hyper threading which you don't need; it will be worse for gaming too. Read the following, it's good for only encoding/decoding and various other things which you may or may not do.http://www.tomshardware.com/reviews/Intel-Core-i7-Nehalem,2057-12.html
An i5 as I said, will be powerful and last you a good while; waiting for Haswell was a good choice too. Don't forget you can overclock for more performance.
I'm using an Intel 2500k I5 and I can run loads of programs at once without a hiccup. All the stuff you listed won't even make an i5 sweat anyway unless your doing heavy gaming.