adding a limit() iterator
adding a filter(predicate) function for filtering an iterator
the limit iterator should provide all the usual iterator sugar.
adding documentation for new features