Add math.Factorial (#1938)
* Add a factorial function to the math library
* Make everything norm-friendly
* Use a loop instead of recursive
* Remove recursive from the comment
---------
Co-authored-by: Maxime <72105771+MaaxIT@users.noreply.github.com>