I'm not really opposed to this being a member function, just not in `RootObject`.  Although it makes me wonder, why aren't we using this everywhere?  Do we really usually want less information?