renaming files
minor refactoring
minor refactoring including inverting logic of stay alive rule to remove double negative
minor refactoring - introduced Cell to make x and y part of it clearer
minor refactoring - inlining unnecessary variables