generic double circular linked list