Add tail call version of factorial from chapter 6