Generic LinkedList Implementation and Iterator