refactored heading utility to be an interface inherented by Being. Dynamic sight boxes that change with heading
refactored map collision into part of the entity update. Changed MoveTo to avoid teleportation and render desync