Add Hommola cospeciation test

Here, we have added a statistical test for host:parasite cospeciation derived from Hommola et al (2009, Molecular Biology and Evolution). This is added as a new module called evolve under math.stats.

We are looking for feedback on the organization and naming of the evolve module. We're not quite sure what to add to the top level description for this module, so any other ideas would be appreciated. 

Note: the test itself is using numpy arrays rather than distance matrix objects because we are using the positional relationships between host, parasite, and an interaction matrix rather than the labels. 
On that particular test, I've made sure to use the mantel one-tailed test.. 

BUT in the process of tracking this problem down, I've come across another, weird one. Using the default test data, a number of the permuted r values are returned as *almost* identical to the observed r value, but just a hair under (like in the 12th decimal).

It looks like the `pearsonr` function is returning values that are just barely different depending on the order of the input arrays:

```python```
# The ordered values for one that shows up as just below equality
almost_x = np.array([8, 8, 9, 3, 6, 3, 7, 7, 7, 8])
almost_y = np.array([8, 8, 8, 5, 4, 2, 7, 4, 7, 7])

# The ordered values for one that shows up as equal to observed correlation
eq_x = np.array([8, 9, 3, 8, 7, 7, 6, 8, 3, 7])
eq_y = np.array([8, 8, 5, 8, 4, 7, 4, 7, 2, 7])

# Running pearsonr on those values
pearsonr(almost_x,almost_y)
>>> (0.79098106277373448, 0.0064330904314995503)
pearsonr(eq_x,eq_y)
>>> (0.7909810627737347, 0.0064330904314995174)

# Sorting both arrays and re-running pearsonr
pearsonr(almost_x[(almost_x + almost_y).argsort()],almost_y[(almost_x + almost_y).argsort()])
>>> (0.79098106277373448, 0.0064330904314995503)
pearsonr(eq_x[(eq_x + eq_y).argsort()],eq_y[(eq_x + eq_y).argsort()])
>>> (0.79098106277373448, 0.0064330904314995503)
```

I have a hunch that this could be affecting the `mantel` function as well, since it's doing a very similar equality comparison.

Is there a better way to do this? It might be an edge case, but for a monte-carlo test like this, it could actually make a substantial difference when comparing small sample numbers...