Add tail_recursion implementation for length
Nicer comments
Duplicate function
!
Adds tail_duplicate