Maybe a naive question, but does it make sense to wrap jobs in other classes if I need to have metadata related to them available? In my case it's about a simple scheduler and the simplest implementation I can think of requires to launch the coroutines right away, as the details are read from a database (and even more scheduled tasks might be created after this.) But I would like to have the details behind those jobs in runtime (like when they're going to trigger, what message they contain, etc.) so I could cancel them if I (or the user) feels like it.