anchor.diff:     (biased :reader biased :initarg :biased :initform nil :type boolean)
      (id :accessor id :type integer)
      (input :accessor input :initform 0.0 :type real)
  +   (transfer-tag :accessor transfer-tag :initarg :transfer-tag :initform :sigmoid)
  +   (transfer-function :accessor transfer-function :initform nil)
  +   (transfer-derivative :accessor transfer-derivative :initform nil)
      (output :accessor output :initform 0.0 :type real)
      (err :accessor err :initform 0.0 :type real)
      (x-coor :accessor x-coor :initform 0.0 :type real)
      (y-coor :accessor y-coor :initform 0.0 :type real)
      (cxs :accessor cxs :initform nil :type list))
     (:documentation "Describes a neuron.  NET, required, is an object of type t-net that represents the neural network that this neuron is a part of.  LAYER, required, is an object of type t-layer that represents the neural network layer that this neuron belongs to.  If BIASED is true, the neuron will not have incoming connections.  ID is a distinct integer that identifies the neuron. X-COOR and Y-COOR allow this neuron to be placed in 2-dimentional space.  CXS contains the list of outgoing connections (of type t-cx) to other neurons."))
  +
  +(defmethod initialize-instance :after ((neuron t-neuron) &key)
  +  (setf (id neuron) (incf (next-id (net neuron))))
  +  (setf (transfer-function neuron)
  +        (transfer-functions (transfer-tag neuron) :function))
  +  (setf (transfer-derivative neuron)
  +        (transfer-functions (transfer-tag neuron) :derivative)))
   
   (defclass t-layer ()
     ((neuron-array :accessor neuron-array :type vector)
  
positive.code:       (setf (err neuron)
              (if (eq (layer-type (layer neuron)) :input)
                  err
                  (* err (funcall (transfer-derivative (net neuron)) neuron))))
        (loop for cx in (cxs neuron) do
             (setf (delta cx)
                   (+ (* (err (target cx)) source-output learning-rate)
  
negative.code: (defun tset-list-to-tset-vectors (tset)
    "Converts something like 
       '((0 0) (1) (0 1) (0) (1 0) (0) (1 1) (1))
     into something like(output neuron
       #((#(0 0) #(1)) (#(0 1) #(0)) (#(1 0) #(0)) (#(1 1) #(1)))"
    (map 'vector 'identity
         (loop for i from 0 below (length tset) by 2 collect
  