gmp_import() and gmp_export()

These functions are thin wrappers around `mpz_import()` and `mpz_export()` provided by the GMP library.

They provide fast conversion between large GMP numbers and binary strings, with configurable word order, word size, and endianness.

I was trying to cater for the case where data_len was not a multiple of size. The integer division rounds down, so I increment to to catch the trailing len % size bytes.

Could go for an error instead. Perhaps like unpack (wanted X got Y).