Read up a fair bit on the differences between exif and jfif about a week ago. The most interesting find for me was that exif allows a little jpeg to be embedded into the main exif metadata marker. This sort of solves the thumbnail issue for directories of images fairly cleanly.
In light of the new discoveries I've added exif support to libferris for both the exif metadata like what camera was used and all the other stuff and for embedded thumbnails. You can also touch an extended attribute to update the thumbnail for a file. This uses young rasterman's epeg library to generate the new thumbnail fast. Just to quote from raster's page epeg can thumb at about 25 times the speed of nautilus. So now ego can thumb at that rate ;)
As the last paragraph let out of the bag, ego and the properties widget in libferrisui have support for the exif thumbnailing.
I've yet to hack in support for XMP and rdfpic which basically allow one to embed RDF into a optional marker in the jpeg/jfif or jpeg/exif file. Markers in jpeg are just little chunks of data which have a size after an ID for the marker. So you can skip the exif marker in jpegs so that feh and other viewers are happy to view jpeg.exif. There is a little change in the main jpeg identifier for exif files but most things are happy to work with exif.
Glad to get the 25th's post off the top of my diary, it would get depressing to see it there very long. (as an aside the experiment failed as expected).