libstd: Remove `~str` from all `libstd` modules except `fmt` and `str`.
libtime: Remove the `tz_zone` field from times.

It depends on `~str`.
libstd: Remove all uses of `~str` from `libstd`
libcore: Remove all uses of `~str` from `libcore`.

[breaking-change]
auto merge of #14310 : pcwalton/rust/detildestr-alllibs, r=brson

r? @brson
Update to LLVM head and mark various ptrs as nonnull.
librustc: Consolidate the attribute handling for tagging function arguments and returns.
Work around LLVM C API limitations and handle foreign functions properly.

stuff