Calculate the integer logarithm for an arbitrary base.
The base must be greater than 1, the second argument, the number
whose logarithm is sought, must be positive, otherwise an error is thrown.
If base == 2, the specialised version is called, which is more
efficient than the general algorithm.
Satisfies:
base ^ integerLogBase base m <= m < base ^ (integerLogBase base m + 1)for base > 1 and m > 0.