Improvements to split_otu_table.py

This PR reduces the code complexity of ```split_otu_table.py```and  adds functionality to allow a user to pass multiple fields to split the biom table on. Adds significant documentation to the library code and the script.
if `fields` or `headers` are ever expected to be large than it would be good to construct a lookup