Separated command validation and move command execution.