application base interface
root entry - gets called by main function and blocks until end of application
See Implementation
application base interface