eventful implementation of single / double linked list