HATMOD +
forget off with all the godawful command-based bullstuff mods and stop being terrified of clientside code you bunch of nancy poofters
that is my mantra and my message to you
when hatmod+ has a clientside component that adds hats you've found into the appearance menu and allows them to be selected, falling back to a default piece if you haven't unlocked the selected hat on the server, then i will endorse it as a valid mod (and as a side note this is totally feasible just not a good method really)
The reason it's not a good method is that it mounts an image. We can only have three or four images mounted (I can't remember which but I think it's 3, slots 0 1 and 2) so it takes up an image slot for something which regularly should not be an image, it should be part of the playermodel. The unfortunate thing is that we can't do this one way or another - Badspot hasn't released the source files so compiling something to work with the default animations is basically impossible.
Tophius has fairly recently recreated the default player model so modifying that would potentially be viable, and if one central version of that player were kept on RTB (or with a non-RTB version containing its own auto-updater for people who hate RTB) which was kept up-to-date with approved changes such as new body parts or new animations (in sets, perhaps) this would allow for mods to make use of the parts with a simple version check to see if a version which has the appropriate parts is installed.
The best solution would be an engine change allowing DTS shapes to be combined at runtime, but
insert weekly spiel about Badspot being an starfish here.