Provide a class for the command history
[Feature] History
[Task] Major change:

 * Split serialization and settingsfile
 * Read settings once at startup, write one on shutdown
 * Implemeent several design changes needed for this change
 * Fix several bugs following from this change