Fixes for 2.6 test failures, replacing astype(str) with apply(str)
Merge pull request #1535 from bashtage/2-6-fixes

TST: Fixes for 2.6 test failures, replacing astype(str) with apply(str)
CLN: Improve warnings to avoid generic warnings messages

All generic Warnings have been replaced with specific warnings, which have
been consolidated into sm_exceptions.py.