fix all bugs
add all test cases to doubly linked list