Implements Base31 encoding and decoding, which is useful to represent large integers in a short, case-insensitive, alphanumeric format.
The difference to Base36 is that in Base31 certain characters that are often misread (0, 1, i, I, l, L, o, 0) are not used.
See the tests for example usage.