Huh. Somehow using inheritance like that never occurred to me.
Time to play with this in my test environment.