I see that MapImageLayer has replaced ArcGISDynamicMapServiceLayer in 4.0 and that DynamicMapServiceLayer is under consideration.
In 3.x, I created a custom layer from a netCDF hosted on a Unitdata THREDDS Server using it's WMS capabilities. I had to create a custom layer and not use the WMS Layer class because the layer had extra properties like color, number of bands, etc.
With MapImageLayer in 4.0, is there a way to create a custom layer like there was with DynamicMapServiceLayer?
I see that the class still has getImageUrl which helped me use the extra properties.
I used the Custom Tiled Layer Type page to help me create the layer:
https://developers.arcgis.com/javascript/3/jssamples/layers_custom_tiled.html