Make the num module optional

Build on top of #117, and makes num optional entirely.

Having num (with one implementation: GMP) available means faster field and scalar inverses, and is required for the endomorphism optimization.

Benchmarks (with --with-field=64bit_asm) for verification:
* --with-num=gmp --enable-endomorphism: 253k cycles
* --with-num=gmp --disable-endomorphism: 345k cycles
* --with-num=none --disable-endomorphism: 432k cycles

(secp256k1 in OpenSSL needs 1523k cycles, Ed25519 needs 231k cycles)