Add sort function.

Evan did 95% of the work, but forgot about the F2 wrapper.
Add sortBy function.
Use Utils.cmp for sorting
Add sortWith
Add Library for Lazy Evaluation
Add more Stream functions
Merge pull request #355 from mgold/sort

Add sorting (targeting dev)
Add examples of new sorting functions and fix the typo mentioned in #355
Split Streams into separate module and add apply (a la <*>)
Add some basic functions to Lazy library
Add more Stream functions and start documentation
Lazy/Stream API changes
Update Lazy docs
Add Stream docs and fix type of sampleOn.
Merge pull request #378 from maxsnew/lazy

Add Lazy Evaluation/Streams Library
Add notes about sorting and laziness
Increase sharing in Stream combinators
Fix iterate with optimal sharing
Merge pull request #379 from maxsnew/lazy

Increase sharing in Stream combinators
fix duplicate *data* constructors