cpp/ranges/borrowed iterator t

@1@ if  models, std otherwise.

@2@ if  models, std otherwise.

These two alias templates are used by some constrained algorithms to avoid returning potentially dangling iterators or views.