We're doing MVC wrong - let's change that. Applications aren't as simple as three letters, their complexity requires creative solutions and proper abstractions. The model isn't a single class, it's an entire layer. Let's peel back the layers to reveal what types of abstractions and patterns we might find within the model layer and how they can make our code cleaner, more isolated/decoupled, and more testable.