Allow usage of several iterators on ModelBase

Storing iterator object as attribute of model doesn't allow
to use several iterators at the same time

Now the new Iterator object which is created by iter()
stores model object, and in such way several iterators can be
created and work without interfering

Change-Id: I5806877a2d15d449b948307a522bf2fb56bf8110
Merge "Allow usage of several iterators on ModelBase"