librustc: De-`@mut` the `external` and `external_srcs` fields of
`CrateContext`
librustc: De-`@mut` `CrateContext::finished_tydescs`.
librustc: De-`@mut` `CrateDebugContext::created_files`
librustc: De-`@mut` `CrateDebugContext::created_types`.
librustc: De-`@mut` `CrateDebugContext::namespace_map`.
librustc: De-`@mut` `CrateDebugContext::composite_types_completed`
librustc: De-`@mut` `CrateDebugContext::current_debug_location`
librustc: De-`mut` `CrateDebugContext`
libstd: Make a temporary separate `stage0` implementation for `Cell` to
avoid a crash in later stages
librustc: De-`@mut` `CrateContext::symbol_hasher`.
librustc: Remove unused `TypeNames::find_name` function
librustc: Remove unused `TypeNames::type_names` table
librustc: De-`&mut` `TypeNames`
librustc: De-`@mut` the crate context's `do_not_commit_warning_issued`
librustc: De-`@mut` the crate context
librustc: De-`@mut` the `ast_ty_to_ty_cache`.
librustc: De-`@mut` the `enum_var_cache`
librustc: Remove `ty_param_defs` from the type context
librustc: De-`@mut` the adjustments table in the type context
librustc: De-`@mut` `provided_method_sources` in the type context