Function modex : (base, power, modulo) : result is
- If power = 0, result is 1.
- Otherwise if power = 1, result is base.
- Otherwise, result is modex(base, power div 2, modulo) squared, modulo modulo, multiplied by modex(base, power mod 2, modulo), modulo modulo.