void Deck::move_cards_to(Deck &where) { while (!this->empty()) where.add_child(this->top_card().shared_from_this()); }