don't clobber existing errno value
update flatmap functor signature to take target, avoid consing
refactoring - simplify, move wildcard predicate to functor
rename fix
macroify common null and invariant checks
rename condtions header
eliminate array.h; create nodelist specific ensure_capacity, fixing allocation alignment bug; use flatmap for wildcard name test; eliminate nodelist cloning;