Moving the logic that define the situation of the cell into the Cell class
Use range instead of if
Move the next state condition logic into private mathods