refactoring singly linked list api