First pass at ABC

**Not ready for merge.** I want to let the tests run to make sure things are working with py2/3.

Added `ScikitBioABC` to `skbio/_base.py`, which only requires `__str__` for now. I updated the public classes that already had `__str__` defined and will start working on the ones that are missing it.

I don't like the name `ScikitBioABC` but I can't think of a better one... does anyone have suggestions for naming this? Note that it's an internal class that only scikit-bio devs will have to work with.

Related to #656.