anchor.diff:  
   (defclass js-collector ()
     ((urls
  -	 :initarg :urls
  -	 :accessor urls
  -	 :initform '()
  -	 :documentation "a list that stores what urls are needed")))
  +    :initarg :urls
  +    :accessor urls
  +    :initform '()
  +    :documentation "a list that stores what urls are needed")
  +   (snippets :initarg :snippets
  +	     :accessor snippets
  +	     :initform nil
  +	     :documentation "A list of snippet strings that should be put in a script block.")))
   
   (defun find-graph-node (key js-dependency-graph)
     "retrieves a graph-node from the js-dependency-graph based on a symbol or url"
  
positive.code: 
  
  '(flet ((button-control ()
  			(declare (special use-js-file))
  			(use-js-file 'behaviour)
  			(list (xhtml:button '(:label "Fuck"))
  					(xhtml:button '(:label "You")))))
    (write-document
  	(with-document
  	  (js-insertion-block ( #'xhtml-script-tag)
  		 (use-js-file 'grid)
  		 (xhtml:html
  		  '()
  		  (xhtml:head
  			'()
  			(xhtml:div '() "above")
  			insert-script-here
  			(xhtml:div '() "below")
  			)
  		  (xhtml:body
  			'()
  			(xhtml:div
  			 '()
  			 (use-js-file "js/initgrid.js")
  			 (button-control))))
  		 (xul:window '(:id "fuck")
  						 (js-insertion-block (#'xul-script-tag)
  							  (xul:button '(:label "fuck"))
  							  insert-script-here
  							(xul:button '(:label "you"))
  							(use-js-file "js/fuck your mom in her dirty ass")))))))
  
  		
negative.code: (defun get-url-from-key (key js-dependency-graph)
    "gets the url for a key reguardles of whether it is a symbol or url (assuming it is in the graph)"
    (if (stringp key) key
        (let ((it (find-graph-node key js-dependency-graph)))
  	(when it
  	  (js-graph-node-url it)))))
  
  (defun creates-circular-dependency-p (key dep-list js-dependency-graph &optional visited-list)
    "checks if inserting into key into a js-dependency-list will cause a unseemly circular relationships to the beautiful dependency graph.  And you wouldnt want thatn now would you"
    (let ((key-url (get-url-from-key key js-dependency-graph)))
      (when key-url
        (or (find key-url visited-list :test #'equal)
  	  (progn
  	    (push key-url visited-list)
  	    (some
  	     (lambda (elem)
  	       (let ((graph-node (find-graph-node elem js-dependency-graph)))
  		 (when graph-node
  		   (creates-circular-dependency-p (js-graph-node-url graph-node)
  						  (js-graph-node-dependency-list graph-node)
  						  js-dependency-graph
  						  visited-list))))
  	     dep-list))))))
  
  (defun add-graph-node (key val js-dependency-graph)
    (if (creates-circular-dependency-p key (js-graph-node-dependency-list val) js-dependency-graph)
        (error "Insertion will lead to a circular dependency graph ~% key:~a~%graph:~a" key js-dependency-graph )
        (setf (gethash key js-dependency-graph) val)))
  
  (defun make-js-collector ()
    "small quicky alias for make-instance 'js-collector)"
  