refactor some of the spot related functions into spot.py
implement global limits for instance types for watch_pending
stop ondemand instances slightly more aggressively