OOP instead of procedural, fixed nearly-empty board converging on fully-populated board, TODO list