Refactoring Command -> CommandCollection