genPOI triage

Summary
----------

Instead of doing the UUID->name resolution for all players in every case, only do it when EntityId is accessed and the name hasn't been retrieved this run already. This makes genPOI usable for people who have many players on their servers but don't wish to use player POI while still using other genPOI features.

To do this, a PlayerDict has been created, which contains a dirty hack to see if the requested item is EntityId and whether it hasn't been set already.

Tests
-------

The following scenarios were tested successfully:

- world with old-style players **without** player POIs but with sign POIs (Exmaple)
- world with old-style players **with** player POIs and with sign POIs (Exmaple)
- world with new-style UUID players **without** player POIs but with sign POIs 
- world with new-style UUID players **with** player POIs and with sign POIs

The following scenarios were **not** tested at all, and may need additional testing:

- single-player worlds **without** player POIs
- single-player worlds **with** player POIs