Removed process logic from NodeInterface, try vistor design pattern instead.
Exrtactor smart pointer classes.