Add Stream.generate

This generates a possibly finite stream of values.