High level application structure

Related thread: How to implement failure boundaries?