Remove unit

Closes https://github.com/rust-lang/rust/issues/18614.
TyBot has to stay for now as that's how represent diverging functions in the AST. I removed TyUniq and TyNil.