Chapter 7 - HOFs

/cc @fabioyamate @laurocaetano
I would like to have an analogy of the `unfold` function, like the `foldl` that have the analogy of folding a paper.

I couldn't see the relation of `unfold` with "unfolding", if there is one. The type is kept `[a] -> [a]`, I would expect that the unfold would be a dual of fold, so `a -> [a]`