working unoptimized game of life