add property-based test
Merge branch 'PrimeFactors'