ENH: Separated warnings from other code into a new file

sm_warnings.py now holds custom warnings. ConvergenceWarning was moved to this
new module, and imports were corrected.