Made multiple changes to enable spot instances (doesn't adjust threads) and also renamed functions to make them more descriptive