NOTE: Had to make `NodeLinkItem` trivial again, by removing its default values and instead using an 'init' function. Please ensure that the code area you are using your data with _is_ compatible with c++ memory handling. UI code generally is not currently.