public ICommand this[int index]
{
get { return _commands[index]; }
set
{
var parsedCommand = _toStringParser.ParseCommand(_commands[index]);
_commands[index] = value;
var parsedInput = _toStringParser.ParseCommand(_commands[index]);
_logger.Write($"Command \"{parsedCommand}\" replaced \"{parsedInput}\" at {index}\n");
}
}