How about a compromise ( I like this better actually) - We default namespace by `modelImpl()` but not by `ID()`.  If developers want instance specific namespacing, they can `addVal("ID", ID())`