SoftTimer library

Sorry I didn't have received notifications about your questions. But as I still develop my library, you may still interrested in the answers.

1- how do you handle interrupts in this model?
2- if a task is running and another 'Alarms', is it started or delayed?
3- how to handle Serial?

Interrupts are just happens. I do not modify any interrupt configuration in the Arduino. No hardware is involved in my solution, everything is implemented in the software.
Generally say, when a hardware interrupt occurred, the processor "stops" at that point and the interrupt handler is called. After the handler finished, the program is resumed. This is why we must exit the interrupt handler as soon as possible, and mark the potentially modifiable variables with "volatile".

SoftTimer does not operate with software interrupts. We have tasks. Tasks are invoked after each other, at the time they are scheduled to run.

4- what is the Task *Me pointer?

This is a technical thing. It turns out that it is very hard to program nice object oriented code in Arduino, because we are not recommended to dynamically create objects. This is why I like to add the pointer pointing to the actual object "me" in the callback signature.