improving my linked list