factory pattern attempt
factory pattern: Illegal combination of modifiers

cannot combine these.  basically:
- i want an abstract class FoodEaten
- i want an contractual method forces impelmentation

∴ there's probably some contradictions i'll need to choose between
isolated FoodEaten, not using ATM