very rudimentary version of singly linked list