anchor.diff:  (defun run-koans (package)
     "Run all koans for a given package."
     (loop with results = nil
  -        for test-name being each hash-key in (package-table package)
  -          using (hash-value unit-test)
  +        for (test-name unit-test) in (reverse (package-table package))
           for koan-result = (run-koan unit-test)
           do (push (list test-name koan-result) results)
           while (every (lambda (x) (eq x :pass)) koan-result)
  
positive.code: (defparameter *test-db* (make-hash-table :test #'eq))
  
  (defun package-table (package)
    (or (gethash (find-package package) *test-db*)
        (setf (gethash package *test-db*) (make-hash-table))))
  
  (defmacro define-test (name &body body)
    "Store the test in the test database."
    `(progn
       (setf (gethash ',name (package-table *package*)) ',body)
       ',name))
  
  ;;; Test statistics
  
negative.code: (defun test-count (&optional (package *package*))
    "Returns the number of tests for a package."
    (let ((table (package-table package)))
      (length table)))
  
  (defun test-total-count ()
    "Returns the total number of tests."
    (loop for table being the hash-value of *test-db*
          sum (length table)))
  
  ;;; Test passed predicate.
  
  