Imposed bounds on the anneal schedules #1653

Dear SciPy Devs,

I was playing around with the deprecated scipy.optimize.anneal and came across #1653.
This patch makes the lower and upper parameters behaviour as the documentation describes it.

I thought about abstracting the procedure for fixing it and moving it to the base class, but overall it feels worse than current solution.
Please review. Any suggestions are appreciated.

Cheers,
Chris