DishMode Model
Every command which transitions the dishMode is vetted by the component manager using the DishModeModel.
The model has a network of nodes which determine the pre-condition for every mode request command based on
the component state.
The DishModeModel is an abstraction of the allowed states from a current state (see below) from the Dish States and Modes ICD.
The image below shows ALL the possible mode transitions generated from the DishModeModel
(see README on how to generate the graph or use the python notebook at docs/src/generate_dish_mode_state_graph.ipynb).