moved divisor code to own file, updated 12 to use it, and solution for 21