### Comment Unit Tests
### Author:: Blaine Buxton  (mailto:altodorado@blainebuxton.com)
### Copyright:: Copyright (c) 2008
### License::   See LICENSE
###
### It takes a functional approach to the common Enumerable protocol of select, collect, and reject. 
### By functional, I mean the collection is not changed nor is a new modified one created. 
### The blocks are kept around until they are absolutely needed. 
### I have been wanting this functionality for some time because it's nice for large collections. 
### If you have a collection in which you are calling a lot selects, rejects, or collects on, 
### then this will not create the intermediate collections. 
### It will wait until you ask something of the collection where it can not delay the answer. 
### This should make these chained operations must faster on large collections. 
###
### This was a lot of fun to program and it's not that big. Take whatever you want from it!
###
### Read the tests to see how it works!
### If you learn anything from this please feel to send me an email!
###
### Check out the tests for examples.
