Rework initial state and animation

Initial state can now be read from a file or a SEED environment
variable. The animation mechanism is greatly improved, it no longer
fills the terminal with animation frames and completely clears on
completion. The world also now wraps, so the game goes on much longer.