finish linkedlist code without testing