anchor.diff:  ;;; Other methods
   
   (defgeneric nth-inhabitant (town n)
  -  (:documentation"Finds the nth (zero-based) inhabitant in a town.")
  +  (:documentation "Finds the nth (zero-based) inhabitant in a town.")
     (:method ((town town-snapshot) (n number))
        (aref (population town) n)))
   
  
positive.code: 
  (defvar *style-character-list* "#.=?O|+*_:~X;'$%^\"/vq`"
    "List of characters eligible for styles. This can be rebound if you desire more characters.")
  
  ;;; Classes
  
  
negative.code: (defgeneric tick! (town)
    (:documentation "Destructively modifies a snapshot to become the next iteration of the simulation.")
    (:method ((town town-snapshot))
      (deconform town (cdr (assoc :stickiness-in-deconforming *simulation-parameters))))
    (:method ((town delayed-town))
      (if (null (aref (town-history town) (mod (1+ (ticks town)) (period town)) 0))
          (wander town (cdr (assoc :stickiness-in-wandering *simulation-parameters*)))
                                          ; While the history fills up, randomly wander, changing fashions 1/6 of the time
          (deconform town (cdr (assoc :stickiness-in-deconforming *simulation-parameters*)))))
                                          ; After that, proceed as normal
    (:method :after ((town town-snapshot))
      (incf (ticks town)))
    (:method :after ((town delayed-town))
  