The CommandList is a dynamically changeable list,
that contains all the function calls for every menu item,
toolbar button and most other widget items.
It holds also label,
icon and more for each command.
All these properties have to be changed globally here in a clean way.
These commands where used by different gui elements,
that allows menu and toolbar definitions to be very compact,
readable and and easy changeable.
Names of commands contain dashes as separator of namespaces.