def divmod(other)
      raise ArgumentError, "Incompatible Units ('#{self}' not compatible with '#{other}')" unless self =~ other
      return scalar.divmod(other.scalar) if units == other.units
      to_base.scalar.divmod(other.to_base.scalar)
    end
def divmod(other)
      raise ArgumentError, "Incompatible Units ('#{self}' not compatible with '#{other}')" unless self =~ other
      return scalar.divmod(other.scalar) if units == other.units
      to_base.scalar.divmod(other.to_base.scalar)
    end
divide two units and return quotient and remainder
 when both units are in the same units we just use divmod on the raw scalars
 otherwise we use the scalar of the base unit which will be a float
 @param [Object] other
 @return [Array]