Clean up pointlessly redundant divisor checking.
Implement custom quickcheck generator, clean up quickcheck testing.
Remove lifetimes in order to support quickcheck. Clean up validation.