implement gcd with lists
refactor Function to pass args every time
add string manipulation functions