It's not actually a good idea, except for timings.
Users should not care about the codec details like disposal and blending methods. For example, if you ever worked with video, you know that video codecs rarely use full frames, they usually save difference between frames, but such implementation details are hidden from the user. When user opens a video in video editor, it shows full frames, not difference between frames. Decoder is smart enough to take care of little details like disposal and blending methods, and present you with full frames. The same with encoder, it's usually smart enough