Adding player classes, read_int shared utility function, correcting
simulate_move and functions that rely on it, correcting unit tests,
adding total game playing (with human player working and AIs selectable)