First stage of enum namespacing changes
auto merge of #18481 : sfackler/rust/enum-namespace, r=pcwalton

After a snapshot, everything can be switched over and the small bit of hackery in resolve dealing with `ENUM_STAGING_HACK` can be removed.

cc #18478