Builtin bounds for closures and traits, take 2

Fixed a merge conflict, some tests, some bitrotting, etc., from #7248.