Fix problem with plot_semivariogram.py

This is a quick fix for the fact that plot_semivariogram.py would fail
when the inputed mapping file contains more categories than the ones in
the distance matrix.

Fixes #1378
Allows group_signifigance to skip rows

if a group row would cause an error in kruskal wallis, the p_val and
test stat are returned as nan
MAINT/ENH: fixes #1201 and adds taxonomic assignment results to index page
MAINT: fixes #1292
MAINT: fixes #1339
MAINT: fixes #1352
fixes #1516
ENH: added files that I've accidentally committed in the past
BUG: fixes #1360
DOC: fixes #1670
returns nan only when ValueErrors occur

Identical values will raise a ValueError in kruskal
BUG/ENH: Let write_biom_table fallback to JSON

`write_biom_table` required the availability of H5PY, this has been
changed to depend on an optional parameter that sets whetehr we want a
JSON or an HDF5 formatted BIOM file written to disk.

I've added an extra test for the case where we want to force to write as
a JSON string.

What this means is that QIIME does not require HDF5 and H5PY to be
installed, however if these two are available it will give preference to
HDF5 over JSON.

Fixes #1597
Fixes #1739
DOC: fixes #1731
MAINT: fixes #1733
DOC: Cleanup comments and some print statements
Merge pull request #1742 from jairideout/quick-fix-all-by-myself

more quick fixes for 1.9.0
Merge pull request #1741 from ElDeveloper/json-fallback

BUG/ENH: Let write_biom_table fallback to JSON
Merge pull request #1736 from JWDebelius/otu_sig_change

Allows group_signifigance to skip rows
Merge pull request #1743 from ElDeveloper/semivariogram-updates

Fix problem with plot_semivariogram.py
REL: added notes on user-facing changes to change log