What is another design pattern that offers similar flexibility and better performance than EAV? Why does EAV result in slower queries, and how can type safety be enforced with an extended EAV structure or another design pattern? Why did you recommend a design pattern with known deficiencies?