title: How to push a view controller into generated navigation hierarchy
body: <p>I have an App with a navigation controller as its root controller. Normally the only way to navigate through the app is ViewController1->ViewController2->ViewController3. My app has a notification that pops up when the app is closed, and when the user clicks on it it needs to display ViewController4. From ViewController4 the user needs to be able to navigate back to ViewController3, then ViewController2, then ViewController1 despite the face that they never actually visited those view controllers. Is there a way to launch the app directly to ViewController4 and artificially insert the previous 3 ViewControllers into the hierarchy?</p>
  
  <p>I've tried pushing it to the root navigation controller with <code>.pushViewController(ViewController4, animated: true)</code> which works when the app is already in the foreground and sticks it on top of the navigation stack from wherever you were, but it doesn't guarantee that 1, 2, and 3 are behind it (and nothing else); and if the app is fully closed when the notification occurs then it fails to display anything at all and just crashes. </p>