Thank you, this indeed clears up a lot.
So I basically just need to fall in love with registering events as this seems to be the only way to run things in the background.
That's pretty much exactly what I was looking for, everything I was looking to do pretty much works under callbacks from modem_messages so far but I can see many other ways to use events with different signals, such as timers etc.
Thanks