no need to check if err is nil
rename magic functions
unify error and verbose messages with their own functions
attr is really attrValue
added "copy" as storing node