adding a recursive factorial function