Model Interface separate from Component
Only Components with "data" have
models
Separate Model per data abstraction
Shared where possible
Default model
implementation
inside Component