Define variants in a sub-namespace of their enum

[Rendered](https://github.com/sfackler/rfcs/blob/enum-namespace/active/0000-enum-namespacing.md)
I don't think it was explicitly described by the UFCS RFC. However, I think it's tied into some non-trivial questions regarding name resolution. For example, are imports restricted to inherent items? What about items defined in extension traits? Type aliases? This all gets increasingly complicated because you need to start bringing in the type checker to resolve a lot of it, and it's hard to use the type checker when you haven't even resolved *names* yet.