implemented repeat
implemented range
rename Range to Stream
removed unneed helper struct
implemented repeat infinity
avoid unnecessary work on take
one more test