Refactoring chat commands to "Command" pattern