Steve Maine has another excellent post online about estimation models, using "perfect engineering" (PE) hours as the baseline. A PE hour is what you have when you are in the zone, with no outside distractions (ie: meetings, email, IM, etc).
All of the variables that can then take you out of this "perfect engineering" zone are then factored in at a later time, giving much more accurate estimates.
The biggest thing to make this work though is that the estimate has to be developer driven. Sadly, in most organizations, this is still not the case.