clean code
stream an enumerator; slice_stream will slice stream into multiple streams instead of buffered array
move stream interface into stream.rb; re-impl counter as enumerator stream
convert all obj to enumerator and use enumerator stream, instead of impl different stream for different classes
make sure slice_stream will not over slice the stream
refactoring SlicedStreams; add test for the case that sliced stream should be empty if jump to process next slice stream
small change
add stream map, select, each, filter
use stream each to impl request timestamp parser
update version
always output one object (hash) for easier chaining processing, due to how lambda handles arguments