ENH: Add iter_regex and find_features

Fixes #612. Adds iter_regex to skbio._sequence.BiologicalSequence and
find_features to skbio._sequence.NucleotideSequence. Supported features are
currently purine_run and pyrimidine run, but more can be added by specifying
additional regular expressions.
Simplify the regex considerably

Not quite sure what I was thinking with that one
Add option to allow gaps
Add initial implementation of OrdinationResults.plot

Currently only supports plotting numeric metadata, and there are a large number of todos scattered throughout the code.
Update plot method to return figure
Add several input error checks to plot method
Add cmap option
Add support for plotting categorical data

Code still needs cleanup and support for a legend.
Add legend support for categorical data
Move categorical legend plotting code to private method
Refactored rest of plotting code into private methods

Also renamed several variables for clarity.
Use functools.partial for scatter plotting calls
Add unit tests for _validate_plot_axes
Add unit test for _plot_categorical_legend
Add tests for _get_plot_point_colors with invalid input
Add _get_plot_point_colors test for numeric column
Add unit tests for categorical column in _get_plot_point_colors
Add tests for public plot method

Also refactored a bit of the unit test code.
fix pep8/flake8 errors
Creates power analysis code