[libc++][ranges] implement `std::ranges::split_view`

- implement `std::ranges::split_view` (last c++20 view)
- Work in process on testing iterator/sentinel, but since we are
getting closer to the deadline, I'd like to send the review early

Differential Revision: https://reviews.llvm.org/D142063

GitOrigin-RevId: a2b3ab8f7786b9bb6e1b8bbb01b88d4bbe28af69
30 files changed