way for programmatically generating trees more easily.
all the optionals into lib/. lib/core.nom and tests/all.nom are no longer needed now.