Exercise 4.5, tail recursive, it only traverses the list once
Exercise 4.5, tail recursive, second version, it traverses the list once, it avoids one final pattern matching to produce the Option output
Fix some test text messages