AST: Introduce experimental ModuleSelectors feature.
This feature will allow fully-qualified declaration names to be parsed using a
new "module selector" syntax, e.g. `Module::Type` instead of `Module.Type`.
This new syntax will help prevent ambiguities when module names and type names
conflict.