Switch to 30-bit digits (#60)
Switch to 30-bit digits (#60)

The primary motivation is that this is more efficient on recent
versions of V8, where pointer compression is enabled and "Smis"
hence only have 31 bits of payload.
A secondary benefit is that additions and subtractions can be
done on full digits rather than half-digits, because we can check
for carry/borrow bits on the 32-bit intermediate result.

This shaves around 30-40% off the time taken for most operations,
and saves some memory for JSBI.BigInt instances too.

Fixes #40.
GoogleChromeLabs/jsbi,GoogleChromeLabs/jsbi,GoogleChromeLabs/jsbi