anchor.diff:  
   (define-level (consix :test-order '(player enemy t))
     (grid :named grid)
  -  (player :row (1- grid-rows) :col (floor grid-cols 2) :grid grid)
  +  (player :lives 3 :row (1- grid-rows) :col (floor grid-cols 2) :grid grid)
     (enemy :pos (vec 0 0) :structure (list 0.0 0.0 0.0) :grid grid))
   
   (defun game ()
  
positive.code: 
  (defclass player ()
    ((pos :accessor pos)
     (row :initarg :row :accessor row)
     (col :initarg :col :accessor col)
     (grid :initarg :grid :accessor grid)
     (halo :initform (make-instance 'halo) :accessor halo)
     (movement-actions :initform '() :accessor movement-actions)
     (claiming :initform nil :accessor claiming-p)))
  
  (defmethod initialize-instance :after ((player player) &rest initargs)
    (declare (ignore initargs))
  
negative.code:          (setf (claiming-p player) nil)))
        (t (warn "Player changed to a cell it shouldn't have changed to (~D)." cell)))))
  
  (defun player-die (player)
    (cond ((plusp (lives player))
           (decf (lives player))
           (disclaim-cells (grid player))
           (setf (claiming-p player) nil)
           (setf (row player) (initial-row player))
           (setf (col player) (initial-col player))
           (setf (pos player) (cell-center-position (row player) (col player)))
           (setf (movement-actions player) '()))
          (t (outer-world))))
  
  
  ;;;; Enemy
  