Fgl unit fires compilation errors.
Something's wrong with your installation then because mine works fine

I think you better create an enumerator instead of creating ForEach method, so the iteration could be done with for...in loop.
Hmm... TFPGMap needs an Enumerator like TFPGList so it can be iterated using for..in loop as well.