[ASDisplayNode] Remove node from supernode before adding it as a subview (#2746)
[ASDisplayNode] Remove node from supernode before adding it as a subview (#2746)

* [ASDisplayNode] Remove node from supernode before adding it as a subview

If a node is being added as a subview to a UIVIew, we must make sure to remove it as a subnode of its supernode.

* remove from supernode if adding to a layer.

romyilano/AsyncDisplayKit,JetZou/AsyncDisplayKit,chrisdanford/AsyncDisplayKit,flovouin/AsyncDisplayKit,chrisdanford/AsyncDisplayKit,lappp9/AsyncDisplayKit,maicki/AsyncDisplayKit,tomizimobile/AsyncDisplayKit,JetZou/AsyncDisplayKit,rmls/AsyncDisplayKit,chrisdanford/AsyncDisplayKit,maicki/AsyncDisplayKit,harryworld/AsyncDisplayKit,lappp9/AsyncDisplayKit,flovouin/AsyncDisplayKit,aaronschubert0/AsyncDisplayKit,aaronschubert0/AsyncDisplayKit,romyilano/AsyncDisplayKit,tomizimobile/AsyncDisplayKit,flovouin/AsyncDisplayKit,aaronschubert0/AsyncDisplayKit,romyilano/AsyncDisplayKit,tomizimobile/AsyncDisplayKit,rmls/AsyncDisplayKit,tomizimobile/AsyncDisplayKit,aaronschubert0/AsyncDisplayKit,JetZou/AsyncDisplayKit,maicki/AsyncDisplayKit,lappp9/AsyncDisplayKit,harryworld/AsyncDisplayKit,aaronschubert0/AsyncDisplayKit,JetZou/AsyncDisplayKit,chrisdanford/AsyncDisplayKit,flovouin/AsyncDisplayKit,harryworld/AsyncDisplayKit,harryworld/AsyncDisplayKit,tomizimobile/AsyncDisplayKit,JetZou/AsyncDisplayKit,maicki/AsyncDisplayKit,rmls/AsyncDisplayKit,lappp9/AsyncDisplayKit,flovouin/AsyncDisplayKit,romyilano/AsyncDisplayKit,rmls/AsyncDisplayKit,harryworld/AsyncDisplayKit,maicki/AsyncDisplayKit,rmls/AsyncDisplayKit