Add an atomic fence intrinsic
Add static initializers for atomics
Fix spelling errors
auto merge of #8087 : Aatch/rust/atomics, r=huonw

Adds a fence operation to close #8061

Also adds static initializers to for atomic types. Since the fields are private, you aren't able to have `static mut` variables that are an atomic type. Each atomic type's initializer starts at a 0-value (so unset for `AtomicFlag` and false for `AtomicBool`).