otu_category_significance.py and significant refactor

This pull request adds support for generating otu_category_significance.py tables, comparing self versus other by body site. I didn't implement HTML table generation yet (or hook it up to index.html) because I wanted to wait until we sort out [this discussion](https://github.com/qiime/personal-microbiome-delivery/issues/3). To that end, otu_category_significance.py output is currently off by default.

I mainly wanted to get this pull request in because I did a significant refactor so that the QIIME workflow framework is now used. This removed a lot of duplicate code and gives us better progress reporting techniques. I also cleaned up a large portion of the code to adhere to the PyCogent coding guidelines.

It would be good to get these changes in before continuing to add more features (mainly to avoid conflicts).