Made the Cell abstract, so all classes now use an interface instead of the actual Cell