 	*/
 	public func startChild<U>(coordinator: Coordinator<U>, completion: @escaping Callback = {_ in}) {
 		childCoordinators[coordinator.identifier] = coordinator
-		coordinator.parent = self
+		coordinator.parentCoordinator = self as? Coordinator<Any>
 		coordinator.start(with: completion)
 	}
 

then keep that flow inside the given container controller.
Expose to Coordinator only those behaviors that cause push/pop/present to bubble up
*/
open class Coordinator<T>: UIResponder, CoordinatorType where T: UIResponder {
	///	This
	public typealias RootController = T

	///	Identifier is used to ease-up debug, logging etc.
	public typealias Identifier = String


	}

	/// Parent Coordinator
	open var parentCoordinator: Coordinator<Any>?
	///	A dictionary of child Coordinators, where key is Coordinator's identifier property
	open var childCoordinators: [Identifier: Any] = [:]



	/// Tells the coordinator to create its initial view controller and take over the user flow.
