added recursive gcd using Euclidean Algorithm