Implement singly-linked list