Cleaned up iterator. combined tests. still see a problem where two successor nodes are appearing on some graphs. returns point to null