modified implementation to remove un-needed nodes.
empty nodes are not shown
programs extracted from dpkg
hwinventory nodes also do not show when empty
architecture changes:
no more using xml-helper.
all complicated aawk scripts are used from the auxiliary file
machine-inventory xml directly calls main functions of library files

commiting all new files, while some of the old must be deleted
deleting old unused files, commiting temp files, and commiting prev release