Generate names for all items
Refactor to allow non material enums
Add entities