Should we create a base class; `NodeBase` for it?