Implement palette generation and investigate palette changes between
versions. Turns out 1.13- has legacy IDs, 1.14 switches to entity
palette and 1.15 refreshes the whole palette just to insert Bee.
Also refactor entity handling code here and there.
This commit should make it so that MCC will check that the player is in range before attacking entities each iteration of the cooldown.
This was problematic before, because, if the entities were still they would be added to the attack list, and then if they stayed still and the client teleported away, it would still attempt to attack the entities, even though it is now out of range.