add skin packages with skin classes
add profile package with profile fetcher classes
update commands
update EventListen
update NMS
fix radius squared
fix exception message
fix npc sometimes not removed from playerlist
fix cannot add npc to playerlist
code/comment cleanup and refactoring
remove unused skin settings
removed NPC_SKIN_RETRY_DELAY, MAX_NPC_SKIN_RETRIES
current code uses cached textures if a skin profile request fails.
add setting for updating skin
added NPC_SKIN_UPDATE: true to always get the latest skin, false to use cached skin if available, default is false.
minor code fixes, refactoring, add settings
removed assert
removed thread checks
added setting: NPC_SKIN_VIEW_DISTANCE
added setting: NPC_SKIN_UPDATE_DISTANCE
added setting: MAX_PACKET_ENTRIES
invoke EventListen#SkinUpdateTracker#reset from within #shouldUpdate instead of requiring it to be invoked manually.
fix cached locations not used in EventListen#getNearbySkinnableNPCs
clamp yaw in EventListen.SkinUpdateTracker
use static constants
rename EntitySkinnable to SkinnableEntity
add SkinnableEntity interface to PlayerNPC (CraftPlayer)
remove unused code from PlayerListRemover
replace Subscriber with direct notification to entity via method
Undo EntityController interface changes
moved skin code from HumanController to CitizensNPC
fix npcs sometimes do not show
... due to packet tracker not being notified that remove packets have been cancelled
fix imports rearranged by incorrect IDE settings