added time conditions for moves

timer added for responses from the client(if the game is acting as a
server) or from the server(if the game is acting as a client).

note: since multithreading seems to be out of the question at this
point, the AI calculates a move with a hardcoded depth for the minimax
tree. because of this, the evaluation should always take the same
time(roughly) and therefore doesn't require a timer. because of this I
only time the responses from the opposite end of the client/server model