Signature verification, fix keypair constructor, cleanup.

for loops being bad? If you have a pre-determined loop count you should certainly use for...
I'm just confused why the value of m[0] is tested. If by any change m[0] might get zero, this test will not test as much as it should. Furthermore, "test" and "m" can be locally scoped to the loop body, so they should.
If you must use such styles, then please use at least `while (m[0]++, tests--)`, so that the value of m[0] does not influence he condition.