documented linkedlist