starting with a generic linked list implementation - not tested yet ;)