How to best clean up my scenes?

What would be the best way to clean up my scenes?

class Scene extends Sprite 
{
    public var scene_name:String;
    public function new()
    {
        super();
    }
    public function draw() {}
    public function update() {}
    public function destroy() {}
}

is doing a removechild on stage sufficient? or do I need to do more stuff in myscene.destroy()
should I iterate over the scene instance and recursively remove all children?

In order to allow garbage collection to run over the object, removeChild is a bare minimum but you will also need to consider if you create any additional references (such as adding event listeners outside the object)

Perhaps a destroy()/dispose() method is a good idea in the base class. That gives you the power to ignore this for all your scenes unless it really becomes a requirement for how a scene is implemented