Simplify answer to exercise 5.2
Prevent unnecessary evaluations

Previous implementation of drop did not handle 
    
    Stream.cons(0, ???).take(1)
Proper comments on take(n) and drop(n)
Merge pull request #338 from mlundela/patch-1

Simplify answer to exercise 5.2