Add lexical scoping to avoid namespace collision
Removing the value of x because of lexical scoping
Lean differences between tail recursion and normal recursion
Re write factorial with tail recursion