Changed GOL to use a HashSet to keep track of the cells it needs to check, reducing the number of calls to checkCell.