Document trailing `self` in paths
The Reference says that `self` can only appear as the first segment of
a path. Further, the `use` chapter describes `{self}` brace syntax as
the way to bind the parent entity of a `use` path under its own name.
In rust-lang/rust#155137, we're relaxing these restrictions: `self`
may now also appear as the last segment of a path (preceded by `::`)
as long as the preceding path resolves to a module, enumeration,
or trait. In a `use` path, `use P::self [as name]` is equivalent
to `use P::{self [as name]}`. In non-`use` paths, forms such as
`type Ty = P::self` and `pub(in P::self)` are now accepted.
Let's update the Reference to reflect this.
This document is the primary reference for the Rust programming language.
See the Reference Developer Guide for information on contributing to the Reference.