Namespacing protocols to other types

since everyone is reviving their dead threads, anyone down to revisit this?