gcd
added some tests