removed old files I used to use for implementation
Reverted to simpler implementation of iterators.
In doing so needed to fix several bugs which had been hidden by the old method of implementation.
Also, discovered a serious pitfall in which version of insert gets called, due to type inference (see note added in code)