Chapter 4: Defining functions

@laurocaetano and @carlosgaldino just finished the exercises from chapter 4.

Also got interested on how to apply lambda calculus. In the past, I couldn't understand the lambda calculus notation, but when you see 'curried functions' the stuff gets more clear. Plus this post[1] helped me a lot in understanding the notation.

[1] http://www.flyingmachinestudios.com/programming/a-taste-of-the-lambda-calculus/