replace R.mathMod and R.modulo with R.mod and R.rem

I set out to rename a couple of functions and ended up spending a long time on Wikipedia, GitHub, and elsewhere wrapping my head around these surprisingly tricky functions/operators.

#### mod

__Clojure:__

```
user=> (mod 42 5)
2
user=> (mod -42 5)
3
user=> (mod 42 -5)
-3
user=> (mod -42 -5)
-2
```

__Haskell:__

```
Prelude> 42 `mod` 5
2
Prelude> (-42) `mod` 5
3
Prelude> 42 `mod` (-5)
-3
Prelude> (-42) `mod` (-5)
-2
```

__Ramda:__

```
> R.mod(42, 5)
2
> R.mod(-42, 5)
3
> R.mod(42, -5)
-3
> R.mod(-42, -5)
-2
```

#### rem

__Clojure:__

```
user=> (rem 42 5)
2
user=> (rem -42 5)
-2
user=> (rem 42 -5)
2
user=> (rem -42 -5)
-2
```

__Haskell:__

```
Prelude> 42 `rem` 5
2
Prelude> (-42) `rem` 5
-2
Prelude> 42 `rem` (-5)
2
Prelude> (-42) `rem` (-5)
-2
```

__Ramda:__

```
> R.rem(42, 5)
2
> R.rem(-42, 5)
-2
> R.rem(42, -5)
2
> R.rem(-42, -5)
-2
```

Thanks, @buzzdecafe. I look forward to @CrossEye's input, too.

> the basic problem is that when the modulus is negative the output is ambiguous.

I would frame it slightly differently. There are multiple correct answers, and it's not obvious which will be chosen. Picking a side and returning a (consistent) correct answer seems preferable to returning an incorrect answer (NaN).

> restricting the domains in these ways makes `mathMod` easy to reason about.

Absolutely. Is this a requirement, though? I place more importance on consistency between the two functions and consistency with other implementations.