Use non-exhaustive attribute

With the new MSRV, we can use the #[non-exhaustive] attribute instead of the __Nonexhaustive variant workaround. This was suggested in #406 (closed).

This involves the public API, so I think it's %v1.0.