This lets us share functionality between List and Range (and other user-defined sequence types).
List.where