Fix modulo performance

### c04330eb17e0f57d605dd1048e5c959bea1b02e7

#### GCC

$ python -m timeit -c "from pi_buffon import pi_estimate; pi_estimate(2200000,[x/1000. for x in range(1000)],1000) "
10 loops, best of 3: 45 msec per loop

#### Clang

$ python -m timeit -c "from pi_buffon import pi_estimate; pi_estimate(2200000,[x/1000. for x in range(1000)],1000) "
10 loops, best of 3: 42.6 msec per loop

### master

#### GCC

$ python -m timeit -c "from pi_buffon import pi_estimate; pi_estimate(2200000,[x/1000. for x in range(1000)],1000) "
10 loops, best of 3: 87.3 msec per loop

#### Clang

$ python -m timeit -c "from pi_buffon import pi_estimate; pi_estimate(2200000,[x/1000. for x in range(1000)],1000) "
10 loops, best of 3: 81.3 msec per loop

## This PR

#### GCC

$ python -m timeit -c "from pi_buffon import pi_estimate; pi_estimate(2200000,[x/1000. for x in range(1000)],1000) "
10 loops, best of 3: 44.7 msec per loop

#### Clang

$ python -m timeit -c "from pi_buffon import pi_estimate; pi_estimate(2200000,[x/1000. for x in range(1000)],1000) "
10 loops, best of 3: 45 msec per loop