Adding the ability to schedule Salt jobs using cron like syntax

Adding the ability to schedule Salt jobs using cron like syntax for the time, using the excellent python-croniter module.  Also updated the module and state to be able to use this new functionality.  Some general cleanup in utils/schedule.py, modules/schedule.py and states/schedule.py