Rename FnStyle trait to Unsafety.
Parse `unsafe trait` but do not do anything with it beyond parsing and integrating into rustdoc etc.
Parse `unsafe impl` but don't do anything particularly interesting with the results.
Implement `unsafe trait` semantics.
Add a bunch of new tests per Alex's suggestion.
Merge pull request #19703 from nikomatsakis/unsafe-trait

Implement `unsafe trait` and `unsafe impl` from the OIBIT RFC

Reviewed-by: acrichto