Feature suggestion: Model mixin for checking for dirty fields

I'm planning to implement tests and code for a model mixin that keeps track of the original values of the model.  I often find this useful for performing tasks in save() methods or pre_save signals (like clearing cache on changes).

[A very simple implementation.](http://stackoverflow.com/a/4676107/98187)
[Another implementation that supports m2m fields](http://stackoverflow.com/a/11011415/98187)

I don't think the implementation of this should create any extra DB queries... at least not by default.  Feedback on implementation suggestion is welcome.

Does this sound like a good addition to django-model-utils?