Returns the smallest integer that is greater or equal to this Rat.
BigInt ceil() { return isInteger ? truncate() : n.isNegative ? n ~/ d : n ~/ d + BigInt.one; }