Content as data, not code
The source books are curated into structured catalogs that live outside the app logic and are validated against the source on every build. Adding a feat is a data change, so the engine never gets edited to make room for one.
