algorithms for homework 1 including euclidian algorithm for greatest common divisor, naive greatest common divisor, naive least common multiple, and naive factoring of an integer