"Separates the behavior of a presentation from the view while allowing the view to receive user events."
http://www.martinfowler.com/eaaDev/ModelViewPresenter.html