`renderPass2` is looping over every entity for every frame, this updates the method so it only evaluates each entity once.
Adds ability to query by rectangle or circle.
* Take directions in the range of 0-63
* Shift direction handling in animation further back
* Don't need to get the DCC direction here.
Because it was added to animation.
* Check direction is within range
* WIP: Add support for missiles
Break AnimatedEntity into two parts to support single and composite animations. Summon misssiles on right click.
* Break animated entity down further
Move npc only logic to npc struct, reduce duplication in map entities
* Change a bunch of int32s to int
* Switch to a 2d array for looking up subtile flags
Also fix up the walkableArea generation
* Check correct tiletype for walls
And fix the subtile tooltip text.