[libc++][hardening] Constrain construction for `__{(static_)bounded,wrap}_iter` (#115271)
This PR restricts construction to cases where reference types of
source/destination iterators are (`T&`, `T&`) or (`T&`, `const T&`) (
where `T` can be const).
Fixes #50058.