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.
ame -> same

suggest returning `set` as the call to `sorted` can be made in test code. additionally, the method name indicates it returns a `set`