Changes many areas to read component data directly from memory instead of repacking into an array. This greatly increases performance and chances of getting cache hits.
Simplify listener handler definition
Other optimizations like using fastutil on jvm, reducing contains checks in archetypes