Refactored a test

Pulled number of table entries into a variable;
expected size is calculated from that number;
added comments explaining steps during stream processing.
Using already instantiated object + removed commented code
Added Fn#copy(), Value#ignore()

These will be needed for head() functionality
Added head()/tail()

tail() just calls drop(1);
head() returns the first element
In force(), if cursor is not before first element, move it

This allows the stream to when forced go through the whole dataset
even though some other stream instance already used the result set.

WARNING: this works only if ResultSet type is not TYPE_FORWARD_ONLY!
Added tests for StreamingResultSet#head()
copy() replaced by clone()
Clarified and extended some javadoc comments