Various improvements to skbio.stats.distance.mantel/pwmantel functions

Various improvements to `skbio.stats.distance.mantel` and `skbio.stats.distance.pwmantel`, including:

- addition of `strict` and `lookup` optional parameters in `mantel` (these were previously only available in `pwmantel`)
- reordering/filtering of `DistanceMatrix` inputs to `mantel` (previously only available in `pwmantel`)
- support for `array_like` input to `pwmantel` (now consistent with `mantel`)
- new and expanded doctest examples for `mantel` and `pwmantel`
- refactored and more extensive unit testing for both functions

See the changelog for more details.

Fixes #443.
Here's what the new error message looks like:

```All IDs in the first distance matrix (x) must be in the lookup. Missing ID: '1'```

or:

```All IDs in the second distance matrix (y) must be in the lookup. Missing ID: '1'```

@gregcaporaso is this along the lines of what you're looking for?