Allow `!` as the return type of proc/closure literals

Fixes #13490.
Add some tests for closures that return `!`
auto merge of #16836 : P1start/rust/closure_ret_bang, r=alexcrichton

Fixes #13490.