Lots of changes. Read description.

Iterative Deepening Search logic relocated to a higher level (in
TeamMaybeAI; TeamMaybeAI does all the IDS logic and calls
alphaBetaSearch as it needs to. Also refined the deadline logic (if
deadline is reached, THROW AWAY THE WORK FROM THIS ITERATION).

Relocated all time-related things to TeamMaybeAI as static
objects/functions.

In GameSearcher.maxValue()/minValue(), chains are updated BEFORE
evaluation! This... should be right.