OK this is where I've got to. I can define custom items, characters, and so on with the loadimage() functions in MAD. When you load a game the item definitions and some other stuff are reset so I put the item definitions into global and called them again from globals.clearstate(). This works for non-stackable items that have one shared image for the item type.
What I'm finding though is that a new character can be created with images from mods\modname\images\filename.png and after a save and load the image is lost. I'm not sure how to tackle this problem, or even whether it is an issue of load, save, format, locations, or something else. Can anyone help with this?