 	(require-file-path path #'file-regular-p 'file parent) )
 (defun require-dir (path &optional parent)
 	(require-file-path path #'file-directory-p 'directory parent) )
-
-(defun ngender-a-string (x)
-	"given a string, a symbol or a quoted string or symbol, just provide a string - handy for macros"
-	(cond
-		( (stringp x) x )
-		( (symbolp x) (symbol-name x) )
-		( (and (consp x) (eq 'quote (car x)))
-			(ngender-a-string (cadr x)) ) ) )
 
 ;; (mapcar #'ngender-a-string
 ;;  '("foo" foo 'foo) )


(defun ngender-add-paths (symbol paths do-append)
	"prepend or append candidate directory set with directory set bound to symbol"
	(if (eq symbol 'load-path) (message "load-path += %S" paths))
	(if (numberp (car load-path)) (message "loadpath.0 = %d" (car load-path)))
	(set symbol (let ( (paths (ngender-symbol-value symbol))
										 (newbies (ngender-filter-dirs paths)) )
								(if do-append

			( (funcall match (car src))	; first element matches
				(setq rest (cdr src))			; save rest of src list
				(set src-symbol rest)			; splice out matching cell
				(rplacd src dst)					; attach cell with match to dst
				(set dst-symbol src) )		; set and return new dst
			(t (let ( (next (cdr src)) )
					 (while (and next (not (match (car next))))
