create initial implementation of iterator