Massive commit implementing a MVC pattern

Some cleanup, e.i. slit in packages (MVC), may be done.

Slit the codeline between us.
Improved error messaging.