zbus: introduce async listeners

Add a new type of observer: Async Listeners. They are executed within the
system work queue context, offering distinct advantages:

- Asychrouness: obviously it gains the ability of run some urgent/light
  work load in a separate context.
- Prioritization: Async Listeners typically execute before other
  application observers, as they run within the system work queue context
  which is cooperative.
- Reliability: Ensures no message loss during execution. They use the same
  mechanism as Message Subscribers.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
3 files changed