ENH better error message when wrong cmap name.

Now prints all possible choices
add failing test: savefig(StringIO(), format="ps")
add new ps backend test file in `__init__.py`
Fix writing to all manner of StringIO-like objects in PS backend.
Fix encoding issues when font name contains non-ascii characters
Minor doc fixes
add more spectral functions and add new spectrum types to specgram in mlab.py, and clean up window and detrend functions in mlab.py
add mlab tests for new spectrum types, window and detrend functions, and greatly expand existing tests
add CleanupTestCase, a unittest.TestCase with cleanup
refactor mlab spectrum, window, and detrend functions to improve modularity, testability, and performance
implement tests for refactored mlab spectrum, windowing, and detrend functions, with 100% coverage
add more spectral plots and add new spectrum types to specgram in _axes
add tests for new spectrum types in _axes
add demo for new spectral plot types
added information regarding new spectrum functions to CHANGELOG, whats_new, and api_changes