Every recipe (of every recipe type) is now cached in an ArrayList, which will makes accessing all available recipes a ton faster.
This speeds up player joining by ~223843 ns (0.2 ms) since all recipes have already been cached and the stream that would have normally created a Set of all recipes has now been replaced. An ArrayList was chosen for its fast size() method, which makes serialization in PacketPlayOutRecipeUpdate as fast as possible.
- Removed async entity tracking, as this is not a good implementation and has caused issues numerous times
- Removed "0037-Load-also-the-chunk-that-you-re-teleporting-to" as it does not fix the core problem
- Removed "0048-Fix-villager-dupe" as it was deemed unnecessary