as `removeFromParent` calls back to `removeChild` passing itself, and because we are in the parent 'scope' here - we can be more efficient by simply calling `removeChild`, passing the child:

`this.removeChild(this.children.shift());`

`removeChild` can take an actual child as an arg, and there is no need to provide the index as the parent will figure that out. 

Using shift will create a FIFO - which seems correct, altough in the future we may want to provide an option to pass `pop` so a FILO kinda thing can be done.