new node class and hierarchy
iterator added
testing