Entities maintain high cache coherence automatically using a proprietary design. An entity can use inheritence or composition; cache coherence is the same.
Scene entity processing is completed in one pass. Overlay entity processing is completed in two passes.
An entity can be dependent on another entity. Hierarchal entities maintain data orientedness. An entity that has a dependency on another entity will always be processed after the entity it is dependent on is processed. Hierarchal entities have a super entity (parent) and possible subentities (children).
Adding/Removing entities is very fast. Efficient caching order is typically maintained. Gaps are possible that can break cache coherency, but in the typical pattern for games, gaps are small and filled quickly.
Entities use keys instead of pointers. Keys are versioned to a specific instance of an entity. A key can be used to check that an exact instance of an entity still exists before accessing the entity.