Refactor CommandExecutorInput to be immutable