kind_of use faster proto::common_domain.

table_ etc.. inherits from container::domain so we can reuse
a function overload based best domain selection instead of
sorting base/derived relationship using MPL.