By using Active objects you can replace animation frames on runtime(Replace Frame action). It's not perfect however, as you need to have dummy frames put in before you can tamper with the frames on runtime. So basically you cannot add or remove frames via events. You more or less have to plan the maximum amount of frames and animations that you'll need and also the amount of objects, as all instances of Active Object 1 will be affected by the frame changes. So you might want to handle this through a qualifier and have each active object keep an alterable string or something that corresponds with external file names. The Replace frame action can also alter the Hot/Action spot per each frame you load.
Granted I've never tried it but if I did make a system for this I would also have either arrays or ini files store animation information for all objects. For example like:
Then you can actually make your own animation system on top of what Fusion have in place. Say your base object has 50 dummy frames for an animation but you only need to use 10 for this specific animation. You can then manually set it to check If Animation <number> is playing and frames is greater than the number specified in the ini/array file, then loop back to the frame you've also setup in there. You can probably make some very complex systems if you dig deep into this.
AnimationID=0 <- You cannot refer to animations by name, so you have to use their numbering instead.