Change features of a model by changing the functions within it.
ga_model_edit(
  model,
  data_f = NULL,
  required_columns = NULL,
  model_f = NULL,
  required_packages = NULL,
  description = NULL,
  outputShiny = shiny::plotOutput,
  renderShiny = shiny::renderPlot,
  inputShiny = NULL,
  output_f = NULL
)The model to edit - if a filepath will load model and save back edited model to the same file
A function that gets the data
What dimensions and metrics are required
A function that inputs data, and outputs a list of assets -
must take data from result of data_f in first argument
The packages needed for data_f and model_f to work
An optional description of what the model does
A shiny UI output function that will display the results renderShiny
A shiny render function that will create the output for outputShiny from output_f
Optional input shiny functions (like dateInput()) that will be used within the model's Shiny module.  The id should be exactly the same as one of the variables in the model functions.
A function that inputs the output from model_f, outputs a visualisation
Other GA modelling functions: 
ga_model_example(),
ga_model_load(),
ga_model_make(),
ga_model_save(),
ga_model_shiny_load(),
ga_model_shiny_template(),
ga_model_shiny(),
ga_model_write(),
ga_model()
if (FALSE) {
decomp_ga <- ga_model_example("decomp_ga.gamr")
decomp_ga
# edit its description
ga_model_edit(decomp_ga, description = "Changed")
}