Add Mantel test to distance-based stats subpackage

# Intro
Added `skbio.math.stats.distance.mantel` function. This function is meant to provide a low-level, simple API to run a Mantel test on two distance matrices.

The primary inputs are two distance matrices of the same shape. These can be ``array_like``, including nested Python lists, ``ndarray``s, or ``DistanceMatrix`` instances. Optional parameters allow control of the correlation coefficient (Pearson and Spearman correlation are currently supported), number of permutations, and alternative hypothesis.

I'm planning on adding a higher-level interface that performs filtering/reordering of inputs, supports more than two matrices for pairwise comparisons, etc. but figured it'd be good to get this reviewed/merged first.

# Example
Run a Mantel test over two 3x3 distance matrices using Pearson correlation and a two-sided test with 999 permutations:

```python
from skbio.math.stats.distance import mantel
x = [[0, 1, 2],
     [1, 0, 3],
     [2, 3, 0]]
y = [[0, 2, 7],
     [2, 0, 6],
     [7, 6, 0]]
mantel(x, y)
(0.7559289460184544, 0.654)
```

# What else changed?

- When constructing a `DistanceMatrix`, IDs are now optional. If not provided, monotonically-increasing integers (cast as strings) are used as the IDs.

- Added `DistanceMatrix.permute` method.

- Moved `bioenv` method out of `skbio.math.stats.distance.base` into its own `_bioenv` submodule (similar to what I did with `_mantel`). `nosetests --with-doctest` doesn't like having functions named the same as the module that they live in (see https://github.com/nose-devs/nose/issues/92).
Well, I was thinking about this the other day and the only reason why
this line would make any sense is if the files were executable, but if
you make a test file executable nose will not execute the tests, see:

```
yoshikivazquezbaeza:tests@issue-406$ ls
__init__.py        test_anosim.py     test_base.pyc      test_permanova.py
__init__.pyc       test_anosim.pyc    test_bioenv.py     test_permanova.pyc
data               test_base.py       test_mantel.py
yoshikivazquezbaeza:tests@issue-406$ workon skbio
(skbio)yoshikivazquezbaeza:tests@issue-406$ nosetests
................................................
----------------------------------------------------------------------
Ran 48 tests in 15.368s

OK
(skbio)yoshikivazquezbaeza:tests@issue-406$ chmod +x test_mantel.py
(skbio)yoshikivazquezbaeza:tests@issue-406$ nosetests
..................................
----------------------------------------------------------------------
Ran 34 tests in 7.127s

OK
(skbio)yoshikivazquezbaeza:tests@issue-406$ 
```


On (Jun-10-14| 7:50), Jai Ram Rideout wrote:
> > @@ -0,0 +1,259 @@
> > +#! /usr/bin/env python
> 
> Thought we were keeping this line in the test files so that they can be executed directly?
> 
> ---
> Reply to this email directly or view it on GitHub:
> https://github.com/biocore/scikit-bio/pull/416/files#r13597631