Add more tests
Use deque<bool> to avoid data races with vector<bool>
Add bigger test
Add random root for second test
Add smart linked list implementation