Models are subclasses of ENGINE::MVC::Model. They may choose to reimplement the init() method that is called upon instance creation (on every request). A model has a controller. It has no idea about its views.
A model implements an interface. An unlimited number of views may make use of that or a subset of that interface. Models usually implement the Facade design pattern. You can see model as a _view_ on your business objects, whatever they may be.
Models and views form an nxm relationship. There may be n views displaying a single model, and there may be m models being displayed by 1 view. A typical gui application (website) usually has multiple views that share common background functionality, so you save a lot of work here.
This kind of total separation of presentation- and business logic makes it very easy to separate the two parts into independent work processes.