Fixed data not actually being stored

node->data was actually a pointer to the original element stored, meaning that heap data, old data, re-used data, etc would actually result in segmentation faults, segmentation faults, and incorrect data: respectively.