Remove `filter` overload to T?

It’s not really useful in practice. Easier to just implement it custom
on each subclass.
Remove Stream.skipRepeats, keep in subclasses

No reason to declare it on Stream if the implementations are completely
custom anyways.
Implement Stream.skipAsNil and Enumerable.skip
Add Stream.skipAsNilWhile, Enumerable.skipWhile
Remove Stream.removeNil in favor of subclasses'

The definition of Stream shouldn’t ever need it.
Fix map() terminating way too early
Add Stream.takeWhileThenNil, Enumerable.takeWhile
Implement Enumerable.takeLast
Implement Enumerable.aggregate
Implement Enumerable.collect