Add Cache iterator subclass to fix problems with multiple lists
sharing the same iterator (GH #75).