Circumstance now its own class

Adds the feature of circumstances being dynamic, still not factored into
pricing yet, might need to fine tune the potential lengths, and how to
exacerbate/alleviate the problems on the player's end