Adds takewhile

Yields all elements from an iterable until the predicate fails