Problem 12 - WIP

A first version solution that is too slow.
Refactor Triangle number generation
A cleaned up version still too slow
Problem 12

Refactored the generator code to a separate module and extended
its flexibility. This allowed the unittests in other modules to be
executed without having multiple main function conflicts.

Implemented a proper tau function to calculate the number of
divisors of a positive integer.