improving Pool class
adding PoolIterator