first version using negamax, alpha-beta pruning and transposition tables