[Application] Handle multiple attempts to terminate an application

Before this change multiple invokes of Application::Terminate() method broke
the app termination logic in case "OnSuspend" event handler was registered for
the app. Fixed now by introducing a dedicted "IsTerminating" check to
Application::Terminate() method.