Scripting is your friend, I have done it before where the dev VM images was a master (for tools, and patches) and was refreshed regularly (I aimed for every sprint) with the SharePoint install being automated.
Ben Curry and Gary Lapointe did some good work around scripting 2007 builds, which we used. But also I created a custom setup exe that would do a lot of the hard work like site provisioning, data population, additonal SQL data stores etc.
In order to make this work you really need team buy in, and also be willing to dedicate time. It pays off massively, especially on big teams with new resources and helping with pair programming..
For 2010 there is a lot of great info
And Zach has some great info here