I guess in the past I did some programming and used windows at the same time (dedicated cores) as well as light movie conversions so I benefited from Mac Pro's hard drive expansions and ability to upgrade RAM to 16 or more.
Well, unless you're compiling something
really complex from scratch then I'm not sure programming really demands anything that an iMac can't deliver, and even then you'd have to invest in quite an expensive Mac Pro to make much of a difference in large-scale compilation times. Doing that simultaneously with Windows running under virtualisation should be fine too, as two cores gives pretty good Windows performance, especially as newer Intel chips have continued to make virtualisation improvements, and it still leaves you two cores (four hardware threads) for whatever else you're doing. RAM is more of an issue for Windows, and the iMacs can easily add quite a bit if you get it from a third party (Apple RAM is still fiendishly expensive).
I mean, to put this way; the quad core chips available for the iMac (and Mac Mini actually) are now good enough that they surpass an older Mac Pro like mine (8-core early 2008) in pretty much every way, plus you have access to faster RAM, storage and peripherals.
In fact, if you already have a monitor you'd like to use then I'd recommend an iMac + Mac Mini instead of iMac + Mac Pro, but I'd recommend getting the iMac now and the Mac Mini after their next update, as it should include significant improvements to graphical performance. If you don't already have a monitor then a second iMac is a great option.
In terms of storage, the iMac, Mac Mini and new Mac Pro are on pretty level footing except that the new Mac Pro will have Thunderbolt 2, but I doubt you'd need the speed of, currently non-existent, Thunderbolt 2 storage options.
Also, RAM upgrades in the current iMacs are still easy (on the higher-end models at least, is it still upgradable on the entry level models?) so the money you save on a new Mac Pro you can easily spend on getting plenty of RAM from a third party, and still saving you a bundle. You'll save even more with the Mac Mini + existing monitor option, if you can go that route.