Partial implementation of issue #17 - GPI iterator