This sounds pretty well thought out, I'm guilty of orphaning a number of properties myself so being able to clean them up would be nice. I've also had to do silly things to try to determine if a setting is built-in or not, that I'd rather not do.
I'm on the side of having a property data type...