Add a way to save and load a gfx state in display lists.
Its primary purpose is to save the gfx state before rendering a held object, then restore it later.
It fixes the issue where Mario had opaque legs with the vanish and metal caps when holding an object.
This command sets the RGB values of a material's environment color without setting the alpha. This is important, as functions like `geo_update_layer_transparency()` use the environment color alpha to control a model's overall opacity. However, if one of the model's materials sets its own environment color alpha, then that will take priority. This command allows these models to still use environment colors in their materials.
* type checking for dynos gfx symbol parsing
* peachy review
* better parameter counting
* using peachy's changes
* Update dynos_bin_gfx.cpp
seems like fast64 write 0 instead of NULL for null pointer, which is technically valid
---------
Co-authored-by: PeachyPeach <72323920+PeachyPeachSM64@users.noreply.github.com>