Add a simple test for the command pattern
Remove cpp14-style lambdas
Major refactor : change names so that they are more sensible.

Broad changes
==============

* For the plugin interfaces, the fact that a particular class
is a factory, a delegate, or an interface (or any combination of those three)
is now specified in its name.
Example : Process => ProcessFactoryInterface

* The interfaces required for Qt's plug-in mechanism are now postfixed by "_QtInterface"

* All of the multi-class files have been split in single-class files (e.g. Class{Model,View,Presenter}Interface.hpp)

Specific name changes
=====================
* CustomCommand -> PluginControlInterface
* DocumentPanel -> DocumentDelegate{Factory;Model;View;Presenter}Interface
* SettingsGroup -> SettingsDelegate

Some method names still do reflect the old names; they will be changed in a subsequent commit.
Fix documentation
Fix method names
Clean some comments
Split Command in Command and SerializedCommand, to make settings command lighter
Add skeletons of commands required for Scenario