Mars Rover program refactor using command and state design pattern.