Implement while_true view

`view::while_true(range, predicate)` returns a slice of `range` starting at its beginning and ending at the first element of the range for which the `predicate` is false.