https://medium.com/@ignacio.molina.portoles/swift-how-to-handle-multiple-coordinators-and-avoid-memory-leaks-09f44b534340