Conways "Game of Life", Implemented in Haskell with unit tests as an excersize